java - 在 Android 中从 SQLite 中检索数据计数

标签 java android mysql sqlite

我在尝试提出计算级别“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/

相关文章:

java - 尝试在空对象引用上调用虚拟方法,但该对象不为空

mysql - 如何运行一次 MySQL SELECT 查询并在大型插入查询中使用它?

php - 使用 Doctrine 构建通用的 OO ACL

java - 如何更改spring boot应用程序启动目录?

java - 从带有 JAVA 查询参数的链接下载图像

java - 为什么使用堆栈容器速度较慢?

java - AdapterView.AdapterContextMenuInfo 为空

java - 获取动态生成的资源名称/字符串的 Drawable id

mysql - 避免OFFSET,WHERE分页应该是什么样子?

java - 从另一个 Activity 访问导航 View 标题