ソースから sqlite3 をビルドして FTS3 サポートを組み込み、150 万行のデータを含む既存の sqlite データベースに新しいテーブルを作成しました。
CREATE VIRTUAL TABLE data USING FTS3(codes text);
その後、使用
INSERT INTO data(codes) SELECT originalcodes FROM original_data;
次に、各テーブルをクエリしました
SELECT * FROM original_data WHERE originalcodes='RH12';
その列にインデックスがあるので、これはすぐに戻ってきます
FTS3 テーブルに対するクエリ
SELECT * FROM data WHERE codes='RH12';
約28秒かかります
これがかなり速いと思っていたので、誰かが私が間違ったことを説明するのを手伝ってくれますか