我正在尝试通过此查询从fts表中获取最低的_id
:
SELECT MIN(_id) FROM fts WHERE tbl_no=2 AND parent_id=6
我得到的结果是10。但是最小的
_id
是9,它适合选择参数。如果我改用
SELECT _id FROM fts WHERE tbl_no=2 AND parent_id=6
并选择第一行,我得到正确的结果:9。
与虚拟表(FTS)有关吗?我最近从多个表转移到单个FTS,并且正在经历这种情况。
考虑到该表从未更新过,并且默认情况下已进行排序,因此我是否可以保证通过第二个查询获得想要的结果。
注意:我正在Android(尝试
rawQuery
和query
)上运行它。我面前有桌子,我知道这是正确的: 最佳答案
_id
是数字还是字符串?
使用字符串比较时,'10'
尝试:
SELECT MIN(CAST(_id AS UNSIGNED)) FROM fts WHERE tbl_no=2 AND parent_id=6
去检查。我不会在生产中使用它,因为它将无法使用索引。
关于android - 查询FTS表MIN,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25388319/