2010-04-29 57 views
6

我正在写一本字典应用程序,需要在输入时做一些常用的字词建议。SQLite FTS3模拟LIKE somestring%

LIKE somestring%相当慢(~100k行表上约1300ms),所以我转向了FTS3。

问题是,我还没有找到一个从字符串开头搜索的理想方法。
现在我喜欢

SELECT word, offsets(entries) FROM entries WHERE word MATCH '"chicken *"'; 

执行查询,然后解析代码的偏移量字符串。

有没有更好的选择?

回答

6

,请务必将现场word索引和使用

word >= 'chicken ' AND word < 'chicken z' 

,而不是像或匹配或GLOB