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> =?)を見ていません。

プレースホルダー(?)を「values」変数で指定された正確な値に置き換えた場合、正常に機能しています。また、rawQuery()を使用すると、結果が得られます。

しかし、私の要件は同じメソッド(query())を使用することです。

誰かがそのwhere条件をうまく使う方法を教えてもらえますか?

ありがとう

4

0 に答える 0