在 SQLite where 子句中进行数学计算

Doing math calculations in a SQLite where clause

使用 Android 的 SQLite,是否可以对 where 子句中的列值进行数学计算?例如,假设我只想 select 那些在名为 mColumnName 的列中具有偶数值的行。以下方法对我不起作用。

query(mTable, mColumns, mColumnName+"%2=?", new String[]{"0"}, null, null, null, null)

还有其他方法可以实现吗?

Android 将所有查询参数绑定为字符串,这有时会在使用生成数字结果的函数和操作时产生错误。在您的选择字符串中内联零应该可以解决这个问题:

query(mTable, mColumns, mColumnName + " % 2 = 0", null, null, null, null, null)