2

我需要使用 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条件的方法?

谢谢

4

0 回答 0