在我的应用程序中,我需要获取“状态”列中具有特定值的总行数。这是我尝试过的代码,
String unreadquery="(SELECT COUNT(*)FROM TABLE_MESSAGES WHERE KEY_STATUS="0")";
Cursor cursor = db.rawQuery(unreadquery, null);
int a=cursor.getCount();
但查询语句中显示错误。如何获取特定列中值为 0 的行数?
谢谢!
这是创建表的代码:
public static final String TABLE_MESSAGES = "Messages";
String CREATE_MESSAGES_TABLE = "CREATE TABLE " + TABLE_MESSAGES + "("
+ KEY_ID + " INTEGER PRIMARY KEY," + KEY_FROM + " TEXT," + KEY_TO + " TEXT,"
+ KEY_BODY + " TEXT," + KEY_DATE + " TEXT," + KEY_STATUS + " TEXT" + ")";
db.execSQL(CREATE_MESSAGES_TABLE);
最佳答案
如果KEY_STATUS
是文本列,请使用单引号。另外,根据您的评论,TABLE_MESSAGES
和 KEY_STATUS
是定义表名称和列名称的常量。
String unreadquery="SELECT COUNT(*) FROM "
+ TABLE_MESSAGES + " WHERE " + KEY_STATUS + "='0'";
关于android - 根据条件查询获取行数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20565035/