我需要使用 SqliteDataBase 的 query() 方法在 Android 中执行查询。我需要获取取决于 2 列组合条件的行。
我尝试了以下代码:
String whereClause = " colA = ? and (colB + colC*100) >= ?";
String[] values = { String.valueOf(0), String.valueOf(20)};
Cursor cursor = db.query("<table_name>", new String[] {colA,colB,colC}, whereClause, values, null, null, "startDate");
根据where条件中指定的“AND”条件,查询执行成功但未取到结果。似乎它没有考虑那个 AND 条件(colB + colC*100 >= ?)。
当我用“值”变量中指定的确切值替换占位符(?)时,它工作正常。同样使用 rawQuery() ,它正在取得结果。
但我的要求是使用相同的方法(query())。
请问谁能告诉我成功使用where条件的方法?
谢谢