我無法使用全文搜索查詢來選擇所有必要的結果。MySQL全文搜索查詢缺少結果
SELECT i.strItemName FROM Item i WHERE MATCH(strItemName) AGAINST ('big*' IN BOOLEAN MODE)
出於某種原因,該查詢返回只有5個可能的83分的結果。我不明白它在做什麼。它不列出像「大熊貓」,「大頭男孩」等項目。
任何意見是非常感謝!
由於 阿明
我無法使用全文搜索查詢來選擇所有必要的結果。MySQL全文搜索查詢缺少結果
SELECT i.strItemName FROM Item i WHERE MATCH(strItemName) AGAINST ('big*' IN BOOLEAN MODE)
出於某種原因,該查詢返回只有5個可能的83分的結果。我不明白它在做什麼。它不列出像「大熊貓」,「大頭男孩」等項目。
任何意見是非常感謝!
由於 阿明
全文通過默認具有最小字長,通常爲4個字符(參見ft_min_word_length)。任何低於極限值都會被視爲噪音並被忽略。
要更改限制,請設置新值,然後您必須重新生成全文索引以獲取現在屬於可索引限制的詞。
謝謝你!我將環境變量設置爲最少3個字符,重置全文indecies,像一個魅力:)工作。全文搜索唯一的小缺點是它似乎沒有部分的詞組搜索。 – Armin
難道你不想匹配'big%'而不是'big *'嗎? –
@nathanhayfield你在想'LIKE',全文只使用'+'(必填),'-'(省略)和'〜'(否定)作爲操作符。你也可以使用'*'的通配符後綴,但不支持前綴。 – doublesharp