使用Android中SQLite表的全文检索

2014-11-24 14:30:31 · 作者: · 浏览: 2

CREATE VIRTUAL TABLE enrondata1 USING fts3(content TEXT);


可以看到,使用上面的语法即创建了一个fts3的表了,而检索时,根据手册上说的:


SELECT count(*) FROM enrondata1 WHERE content MATCH 'linux'; /* 0.03 seconds */


SELECT count(*) FROM enrondata2 WHERE content LIKE '%linux%'; /* 22.5 seconds */


看到没?这里是使用match了,而不是传统的like,而且效率很高了。


还支持如下的语法:


SELECT * FROM words_fts WHERE words_fts MATCH 'description: company';


即列名:该列要搜索的关键词


还可以这样:


SELECT * FROM words_fts WHERE words_fts MATCH 'description: comp*'


即支持通配符了。