0
我有一個包含所有美國城市的表格。結構和採樣串的樣子:帶部分匹配的mysql全文搜索
| id | zip | state | city | lat | lng |
------------------------------------------------------------
| 29431 | 82732 | WY | Wright | 43.829349 | -105.532327 |
我們的目標是建立一個AJAX autocomplete
搜索,將檢查輸入對zip
,state
或city
。這些都是一些搜索我已經做了和相應的結果:
- wright
// returns all records containing wright as city
- 82732
// returns a single matching record
- wrig
// returns all records that partially match
- wright wy
// returns nothing
所以最後的查詢返回什麼,但我需要它返回的唯一匹配記錄。
其中具有+
和*
的條款由PHP產生在使用搜索查詢:
MATCH (zip, state, city) AGAINST ('+wright* +wy*' IN BOOLEAN MODE)
那麼,如何可以修改此搜索,這樣搜索,例如wright wy
只會返回精確匹配的記錄,NOT
包括結果中的其他位置?
此外,如果術語的順序無關緊要,它也會很好,但根本不需要。即wy wright
仍然返回有效結果。
你能給出「你只返回確切的記錄」是什麼意思嗎? –
如果我輸入'wright wy',我不應該得到其他狀態的結果。我只能收到與wright匹配的城市和wy匹配的記錄。 –