在Android中,如何使用SqliteDatabase的query()方法在where子句中使用基于2列值操作之和的条件

时间:2012-02-20 09:47:06

标签: android sqlite sqliteopenhelper

我需要使用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&gt; =?)。

当我用“values”变量中指定的精确值替换占位符(?)时,它工作正常。同样使用rawQuery(),它正在取得成果。

但我的要求是使用相同的方法(query())。

请问有人可以告诉我使用条件成功的方法吗?

由于

0 个答案:

没有答案