2012-03-10 113 views
1

我有一個簡單的搜索表單,它使用MATCH AGAINST來搜索mysql,這一切都正常工作;但是,當您搜索停用詞或將該字段留空時,它將返回NO結果。Mysql MATCH AGAINST空字段給所有結果

您如何使它返回所有結果?

謝謝

+0

um,它很複雜,因爲將字段留空並單擊搜索應顯示錶中最新的10個條目 - 如果這是有意義的。 – Lan 2012-03-10 15:24:26

回答

1

您將需要在應用程序中開發一些搜索邏輯。

MATCH(columns) AGAINST 'string'語法完成它的功能,即全文搜索。

如果您的用戶沒有給您一個可用的字符串,或者該字符串明顯是一個停用詞,或者您的搜索結果集爲空,那麼您需要執行另一個查詢,以返回最近的十個條目。但是該查詢不需要進行全文匹配。

請記住,停用詞是頸部疼痛。例如,有一個名爲「The The」的搖滾樂隊。你可能不會用全文搜索找到這個樂隊。

+0

好的。謝謝。我儘可能多的想,但只是想檢查你不能使用匹配'*'或'?'。或類似的東西給出了所有的結果。再次感謝 – Lan 2012-03-11 10:30:48