我需要从dan == table_column_one和vrijeme == table_column_two的数据库中返回ID值。我不知道该怎么做。
public static int returnID(String dan, int vrijeme){
Cursor cursor;
int IDRQ;
cursor = db.query
(
TABLE_NAME,
new String[] { TABLE_COLUMN_ID, TABLE_COLUMN_ONE, TABLE_COLUMN_TWO },
new String[] {TABLE_COLUMN_ONE + " like " + "'%" + dan + "%'", TABLE_COLUMN_TWO + " like " + "'%" + vrijeme + "%'"}, null, null, null, null
);
cursor.moveToFirst();
IDRQ = cursor.getInt(0);
return IDRQ;
} );
这就是我尝试的方式,但当然是错误的。
答案 0 :(得分:9)
在SQLiteDatabase.query()中,选择分为两部分。 where子句(a String
)和whereArgs(String
数组)。
要向where子句添加多个条件,您可以使用AND
或OR
,就像Java中的&&
或||
一样。
where子句中的问号绑定到whereArgs数组中的一个字符串。
cursor = db.query(TABLE_NAME, new String[] { TABLE_COLUMN_ID, TABLE_COLUMN_ONE, TABLE_COLUMN_TWO },
TABLE_COLUMN_ONE + " LIKE ? AND " + TABLE_COLUMN_TWO + " LIKE ?",
new String[] {"%" + dan + "%", "%" + vrijeme + "%"},
null, null, null, null);