2014-02-17 42 views
0

我有一個建議表(FTS4),用於爲Android操作欄搜索中的查詢提供建議。我需要查詢表中的建議,其中一列(suggest_text_1)與查詢文本匹配,另一列(data_type)與特定查詢不匹配,如2如何在sqlite中爲一列匹配查詢fts表而另一列不匹配特定查詢?

我當前的選擇文本是table_suggestions MATCH ?,我正在嘗試使用以下選擇參數文本替換'?' - suggest_text_1:*S1* AND data_type:NOT 2

問題是,即使數據存在,表格也提供了我的任何建議。能否以正確的方式指出我執行此查詢?

回答

1

Android中的SQLite庫通常不會使用增強查詢語法進行編譯,因此您必須使用standard query syntax作爲suggest_text_1:S1* data_type:-2之類的東西。 在SQL中,這將是:

SELECT docid, 
     suggest_text_1 
FROM MyTable 
WHERE MyTable MATCH 'suggest_text_1:' || ? || '* data_type:-' || ? 

FTS只支持前綴查詢;你不能在單詞的開頭使用*

+0

是的,我已經知道了,但我沒有更新我的答案。無論如何,謝謝你的回答。 :-) –