2011-10-02 90 views
3

有人能解釋爲什麼MySQL的LIKE和MATCH結果查詢

column LIKE '%board%' 

回報比

MATCH (column) AGAINST('board' IN BOOLEAN MODE) 

更多的結果是,因爲對比賽忽略了像 '黑板', '籃板' 等詞語

有沒有得到匹配迴歸黑板,籃板等?

回答

3

MATCH (column) AGAINST('keyword...將與提供的文字字符串匹配,其中如果一個字包含所提供的字符串,則LIKE "%keyword%"將匹配。

0

這應該爲你做的伎倆:

MATCH (column) AGAINST('board*' IN BOOLEAN MODE) 

來源:http://dev.mysql.com/doc/refman/5.5/en/fulltext-boolean.html

有很多的搜索查詢有很好的例子。

+0

不確定是否可以通過文檔執行'* board *'asterisk用作截斷(或通配符)運算符。與其他操作員不同,它應該被附加到要影響的單詞上。如果單詞匹配以*運算符前面的單詞開頭,則匹配。「 – AlienWebguy

+0

好點,第一個不應該在那裏。 –

+0

計數仍然關閉,使用通配符。例如20 MATCH AGAINST與50%LIKE'%board%' – madphp