[英]Why is MATCH against less effective than Exact match?
我在MySQL表中大約有20行,其“ Title
列為“ Elsewhere
並帶有其他不同的列參數。
我目前正在使用這樣的查詢,因為我的大部分搜索(通過PHP文件)都需要我仔細猜測。 所以我用FULLTEXT INDEX
SELECT * FROM `my_db` WHERE MATCH (`Title`) AGAINST ('Elsewhere' IN NATURAL LANGUAGE MODE WITH QUERY EXPANSION) AND (Type ='movie' OR Type='series' OR Type IS NULL)
這種方法很好用,但是有時候,最明顯的匹配項給了我0行。 相反,如果我做類似的事情:
SELECT * FROM `my_db` WHERE `Title` = "Elsewhere";
它給了我全部20行。
難道不是第一種情況比最后一種情況給出的結果更多,因為后者不夠具體嗎?
注意:我正在使用MATCH
進行搜索。 我不想每次都進行完全匹配。 基本上,將在數據庫上搜索客戶端的用戶輸入。
事實證明, elsewhere
是MyISAM全文搜索的停用詞:索引http://dev.mysql.com/doc/refman/5.6/en/fulltext-stopwords.html
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.