指定された列リストの FULLTEXT インデックスを識別できません
テーブルに全文検索を実装しているときに、「Can」エラーが発生する場合があります。インデックスが正常に追加されたにもかかわらず、列リストに一致する FULLTEXT インデックスが見つかりません。
根本原因:
このエラーは、作成されたフルテキスト インデックスが指定された列と一致しない場合に発生します。
解決策:
この問題を解決するには、フルテキスト インデックスに、セクションで説明したのと同じ順序でまったく同じ数の列が含まれていることを確認します。 MATCH 句。
具体的な例:
指定されたシナリオでは、フルテキスト インデックスは次の列に定義されています:
FULLTEXT KEY `name` (`name`,`breadcrumb`,`description`,`brand`,`price`,`year`,`km`,`usage`,`type`)
ただし、クエリの MATCH 句にはブランド列のみが含まれています:
SELECT * FROM products WHERE MATCH(`brand`) AGAINST('Skoda');
この不一致を解決して全文検索を成功させるには、次のクエリを実行します:
ALTER TABLE products ADD FULLTEXT(brand);
これにより、別のクエリが作成されます。ブランド列の全文インデックス。MATCH 句で指定された列リストと一致することを確認します。
以上が「列リストに一致する FULLTEXT インデックスが見つかりません」エラーが発生する理由とその修正方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。