Android上的SQLite增强查询语法

时间:2013-09-07 11:21:40

标签: android sqlite android-sqlite fts3

我有以下SQLite查询,它在我的本地计算机上运行良好:

SELECT * FROM ftdata WHERE ftdata MATCH 'phrase1:this AND phrase2:that'

这似乎不会在我的Android设备上返回与在桌面上相同的结果集。它在Android上返回的结果要少得多。此查询似乎在两者上都返回正确的结果:

SELECT * FROM ftdata WHERE ftdata MATCH 'phrase1:this phrase2:that'

但是,我最好将AND和OR查询结合起来,而不是强制使用AND。

Android不支持增强查询语法的某些功能吗?我在第一个实例中使用了错误的语法吗?

1 个答案:

答案 0 :(得分:1)

不同的Android固件使用different SQLite versions,但FTS语法长时间没有变化。

您的问题是大多数(所有?)Android供应商都没有启用增强的查询语法。

您应该将自己局限于使用这两种语法的查询。 或者,执行PRAGMA compile_options以检查是否设置了ENABLE_FTS3_PARENTHESIS