我在尝试提出计算级别“2”中字母“B”的数量的命令时遇到了一些麻烦。
_id|letter|level
0 A 1
1 A 1
2 B 1
3 A 2
4 B 2
5 A 2
6 B 2
7 B 2
8 B 2
9 B 2
这是我目前在我的 DBAdapter 中的“代码”。
public long getNumberCorrect() {
int i = 0;
String query = "SELECT **NUMBER OF LETTER B** FROM table WHERE level = 2";
Cursor cursor = mDb.rawQuery(query,null);
if (cursor.moveToFirst()) {
while (cursor.isAfterLast() != true) {
}
}
return i;
}
理想情况下,上面的代码会返回 5,但我不知道用什么替换“NUMBER OF LETTER B”。
最佳答案
您是否尝试过使用 count(*)
?
Something like:
String query = "SELECT count(*) FROM table WHERE level = 2 and letter='B'";
Cursor cursor = mDb.rawQuery(query,null);
if (cursor.getCount() >0 && cursor.moveToFirst()) {
i = cursor.getInt(1);
}
return i;
关于java - 在 Android 中从 SQLite 中检索数据计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13579925/