萬盛學電腦網

 萬盛學電腦網 >> 數據庫 >> mysql教程 >> MySQL的FULLTEXT實現全文檢索的注意事項

MySQL的FULLTEXT實現全文檢索的注意事項

MySQL的FULLTEXT實現全文檢索的注意事項你知道多少嗎,其實這個東西小編測試過不支持中文了,不過既然用了還是有一些事項要注意了。

對於英文,MySQL的FULLTEXT屬性來實現全文檢索是相當方便且高效的,但是在使用過程中需要注意一些事項。

首先對我們對需要進行檢索的字段添加FULLTEXT屬性(假設已經建表):

alter table table_name add fulltext index(filed_1,filed_2);

接下來查詢數據:


SELECT * FROM table_name WHERE MATCH (filed_1,filed_2) AGAINST ('keyword');

此處涉及到一個很重要的注意事項:

MySQL規定全文搜索中被搜索的單詞所在的行數大於等於被搜索的所有行數的一半時候,就將被搜索單詞作為Common word,即不被顯示。(具體條件需要查閱資料確定)

因此,假設在測試的時候,表中只有一行數據,所以無論怎麼執行上述查詢語句,返回的結果總是為空。不必驚慌,多加幾條沒有待查關鍵詞的數據就會有結果啦~

當然,MySQL提供了更加強大的查詢結果過濾:


SELECT * FROM table_name WHERE MATCH (filed_1,filed_2) AGAINST ('+keyword_1 -keyword_2' IN BOOLEAN MODE);

這樣,就會返回包含keyword_1的數據,而包含keyword_2的數據就會被過濾掉

copyright © 萬盛學電腦網 all rights reserved