2011-08-16 71 views
2

我想這個簡單的查詢:簡單的SELECT查詢返回零行

SELECT * FROM `Users` WHERE MATCH (`User`) AGAINST ('User') LIMIT 5 

我對列中的用戶FULLTEXT內。

EXPLAIN SELECT返回:

id select_type table type possible_keys key key_len ref rows Extra 
1 SIMPLE Users fulltext user_comparator user_comparator 0  1 Using where 

我在做什麼錯?

+0

你應該給我們你正在處理的數據。它看起來像沒有包含皮拉爾的城市。然而,我認爲城市只是城市的名稱,你不應該使用MATCH ..反對,但使用相等運算符('WHERE City ='Pilar'') –

+0

我改變了查詢,所以沒有混淆,我需要使用匹配我認爲萬一搜索詞是一個子字符串。不過,我嘗試了一個簡單的運算符,並沒有返回任何結果。然而有城市= Pilar的行。 – lisovaccaro

回答

1

如果列中的50%或更多列user中包含「用戶」一詞,則它將被視爲常見,並且不會與任何行匹配。如果你正在處理少量的數據,你可以使用'like'比較器。

+0

就是這樣。我的用戶太少,增加了一些修復問題 – lisovaccaro