通常のテーブルと FTS テーブルを結合するのは良い考えですか? FTS テーブルの本来のパフォーマンスに影響するかどうか知りたいですか? もちろん、クエリは間違いなく MATCH 句を使用しています。
2665 次
1 に答える
4
A2 つのテーブルとを結合する場合B、SQLite はテーブル内のテーブルから一致するレコードを検索するか、テーブルA内のテーブルBから一致するレコードを検索する必要がBありますA。
テーブルにインデックスがある場合、AまたはBこれらのルックアップが高速になる場合、結合は高速です。両方のテーブルにインデックスがある場合、SQLite はより効率的であると推定した方を選択します。
したがって、あなたの質問に答えるために: FTS テーブルとの結合は、次のいずれかの場合にパフォーマンスが向上します。
- を使用してフィールドを FTS フィールドに結合するか、FTS
MATCHテーブルのを結合します。rowid - FTS フィールドを他のテーブルでインデックス付けされたフィールドに結合します。
これを確認するには、 を使用しますEXPLAIN QUERY PLAN。
于 2012-10-15T08:00:54.237 に答える