运行 SQLiteOpenHelper 中同一列的 OR 语句

Run OR statement in SQLiteOpenHelper for the same column

我的 DatabaseHelper class(扩展 SQLiteOpenHelper)中有一个函数,returns 行基于特定列的值。代码片段如下:

Cursor cursor = db.query(TABLE_LOCATIONS, new String[]{}, COLUMN_PROD_ID+"=?", productId, null, null, null);

其中 productId 是仅包含 1 个值的 String[]

现在我想重复使用相同的函数来匹配同一列的 2 个值。类似于:

SELECT * FROM TABLE WHERE COLUMN1 = VALUE1 OR COLUMN1 = VALUE2;

如何在 SQLiteOpenHelper 中实现此目的。如果这是一个愚蠢的问题,请耐心等待。谢谢。

这与SQLiteOpenHelper无关。

WHERE子句是selection参数;只需适当更改即可:

String selection;
switch (productIdsArray.length) {
case 1: selection = COLUMN_PROD_ID + " = ?";
        break;
case 2: selection = COLUMN_PROD_ID + " = ? OR " + COLUMN_PROD_ID + " = ?";
        break;
default: // blow up
}
db.query(TABLE_LOCATIONS, new String[]{},
         selection, productIdsArray,
         null, null, null);