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条件をうまく使う方法を教えてもらえますか?
ありがとう