下面的查詢不會在Android上工作,並拋出以下異常需要調整我的FTS4 SQLite的查詢
Unable to use function MATCH in the requested context
這是一個非常複雜的查詢,所以我想辦法解決簡化它。對於信息,這個查詢的工作同一個數據庫在我的電腦上與sqlite-jdbc-3.715
司機
SELECT * FROM stop_times WHERE
departure_time >= 1000-125
AND
departure_time <= 1000+180
AND stop_id IN
(SELECT _id FROM stop_sequences WHERE stop_ids MATCH '"642," OR "642," OR ",642"')
AND _id IN
(SELECT _id FROM trips WHERE service_id IN (SELECT _id FROM calendar WHERE wednesday=1))
ORDER BY departure_time ASC
我覺得我的FTS表聲明是確定:
CREATE VIRTUAL TABLE stop_sequences USING fts4(
_id INTEGER PRIMARY KEY,
stop_ids TEXT
);
可能的SQL大師幫助我嗎?由於
編輯:我發現,即使是最簡單的查詢,如
SELECT _id FROM stop_sequences WHERE stop_ids MATCH '"642";
失敗,出現同樣的錯誤。我已經在另一個數據庫中的其他數據庫上使用了MATCH
語句,它根本沒有任何抱怨。錯誤消息中提到的背景與Android的Context
有什麼關係?
變化MATCH喜歡 – 2013-05-02 00:20:12
我認爲這將有一個壞的性能損失,我的stopsequences表是相當大的 – chopchop 2013-05-02 00:33:02
SQLite沒有MATCH – 2013-05-02 00:33:53