我们有一个没有增强语法的sqlite fts3表(Android !!!),我们使用这样的查询:
SELECT * FROM tableName WHERE tableName MATCH 'name*' AND validTo > 1389999600000 LIMIT 10
这在使用fts4和增强语法的iOS上运行良好,validTo compare不能按预期工作:
validTo > anyNumber => true
validTo < anyNumber => false
这与全文搜索表包含字符串有关.但话说再说一遍 – 它适用于iOS.
在iOS上我们有十进制值的时间,如1389999600000.0,但我们尝试了没有任何更改.
关于如何解决这个问题的任何线索?
解决方法:
您不应使用FTS表来存储非文本数据.
如果您真的想将FTS表中的数据视为数字,则必须明确转换它:
SELECT * FROM MyTable WHERE CAST(validTo AS NUMERIC) > 1389999600000
【说明】:本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:254677821)!