2010-02-16 27 views
1

我有一個郵政編碼區如SA1,SA3,SA11,LL41,NP20的表,我需要根據客戶輸入郵政編碼進行搜索,然後匹配相關記錄,我試過了:試圖讓MySQL子字符串搜索工作

SELECT MATCH(postal_district) AGAINST ('SA1 1EG') FROM `postcodes` WHERE MATCH(postal_district) AGAINST ('SA1 1EG') > 0 

但它沒有返回什麼,我做錯了什麼?

回答

0

你也許想要做的事更是這樣?

SELECT postal_district FROM postcodes WHERE MATCH(postal_district) AGAINST('SA1 1EG' IN BOOLEAN MODE); 

我不知道一個全文檢索是你真正想要的,無論哪種方式,你可能會得到更好的服務每行有一個代碼,只是做一個不區分大小寫的匹配(只是比較上每種版本)。如果您堅持使用上述內容,請確保您正在搜索的列上有全文索引(postal_district)。

0

不太清楚你想要做什麼,但你的意思是這...

SELECT COUNT(*) FROM `postcodes` WHERE MATCH(postal_district) AGAINST ('SA1 1EG'); 
0

嘗試

SELECT * FROM `postcodes` WHERE postal_district LIKE '%SA1%' 

我不完全知道你正在嘗試做的這裏。如果你可以嘗試澄清一點。