0
我創建一個在20000記錄之間進行搜索的程序。 我加速我在android sqlite的搜索查詢?
edit.addTextChangedListener(new TextWatcher() {...}
實現這個搜索當用戶輸入一個字符的搜索查詢execute.but很慢回報的答案。
這是我的記錄表:
id, prodname, proddet, prodid, refid
,這是我的搜索查詢:
SELECT DISTINCT prodname , prodid FROM tblProd where ((prodname like '%"+name+"%') or (proddet like '%"+name+"%') and (prodname IS NOT NULL)) LIMIT 20;
而且我的表是FTS3,並使用該查詢搜索:
SELECT DISTINCT prodname , prodid FROM tblProd where (tblProd MATCH '"+name+"*') LIMIT 20
但速度像其他表一樣緩慢。
任何人都可以幫助我如何加快搜索速度,而不會拖延。 對不起,我的英語不好。
你正在使用'like'%...%''查詢。你不能使用這些索引,所以如果不從根本上改變你的搜索系統,你可以做的很少,以加快速度。例如改爲[全文](http://www.sqlite.org/fts3.html#section_3)搜索。 – 2014-12-03 14:32:33
我不能改變我的搜索系統,我的表模塊是fts3 – 2014-12-03 14:34:17