無法識別指定列清單的全文索引
在表上實現全文搜尋時,您可能會遇到錯誤「Can」儘管成功新增索引,但找不到與列清單相符的全文索引。
根本原因:
當建立的全文索引與指定的欄位不符時,會發生此錯誤
解決方案:
要解決此問題,請確保全文索引包含的列數與中提到的順序完全相同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 子句中指定的列清單相符。
以上是為什麼會出現“找不到與列列表匹配的全文索引”錯誤以及如何修復它?的詳細內容。更多資訊請關注PHP中文網其他相關文章!