鍍金池/ 問(wèn)答/數(shù)據(jù)庫(kù)/ 關(guān)于MySql模糊匹配的一點(diǎn)疑問(wèn),如何使用“廣州市”匹配到數(shù)據(jù)庫(kù)中的“廣州”?

關(guān)于MySql模糊匹配的一點(diǎn)疑問(wèn),如何使用“廣州市”匹配到數(shù)據(jù)庫(kù)中的“廣州”?

我遇到一個(gè)問(wèn)題,我前臺(tái)獲取到一個(gè)字符串“廣州”,可以用mysql的“l(fā)ike”匹配到數(shù)據(jù)庫(kù)中的“廣州市”,但是如果我前臺(tái)獲取到的是“廣州市”,該怎么樣匹配到數(shù)據(jù)庫(kù)中保存的“廣州”。

使用like很難做到,因?yàn)槲抑挥幸粋€(gè)關(guān)鍵詞“廣州市”,而我實(shí)現(xiàn)并不能確定數(shù)據(jù)中存儲(chǔ)的是“廣州”,抑或是“廣州市天河區(qū)”這樣是字符串。

而且REGEXP也不支持中文。

請(qǐng)高手解答一下。

回答
編輯回答
淺時(shí)光

幾個(gè)思路供你參考:

  1. 把常見(jiàn)的區(qū)市縣等等級(jí)單位去過(guò)慮掉再傳組數(shù)據(jù)庫(kù)進(jìn)行查詢, 如不管用戶輸入的是廣州市還是廣州,都按廣州查詢;
  2. 使用數(shù)據(jù)庫(kù)的全文檢索功能, 用分詞工具進(jìn)行分詞后再查詢, 如分成:廣州市:廣州廣州市廣州市等幾種查詢條件;
  3. 使用solr或elasticsearch這樣專(zhuān)業(yè)的查詢軟件.
  4. 以上幾個(gè)的組合.
2017年8月27日 11:40