mysql匹配 MySQL匹配全文

2021-10-17 11:29:17 字數 675 閱讀 7764

我試圖用mysql進行全文搜尋,以匹配字串.問題在於它首先返回了奇怪的結果.

例如,字串』passat 2.0 tdi』:

and match (

records_veiculos.titulo,records_veiculos.descricao

against (

'passat 2.0 tdi' with query expansion

作為第乙個結果返回這個(其他人都很好):

volkswagen passat variant 1.9 tdi- ano 2003

這是不正確的,因為在這個例子中沒有「2.0」.

會是什麼呢?

edit2:對於記錄,儘管問題被標記為已回答,但mysql分隔符的問題仍然存在,因此如果有人對如何逃避分隔符有任何建議,那麼將會受到讚賞並且值得獲得500分.我發現增加結果集的sollution是用in boolean mode替換with query expansion,使用運算子強制引擎得到我需要的單詞,如:

and match (

records_veiculos.titulo,records_veiculos.descricao

against (

'+passat +2.0 +tdi' in boolean mode

它根本沒有解決,但至少結果的相關性發生了顯著變化.

mysql 匹配 mysql模糊匹配

1,表示任意0個或多個字元。可匹配任意型別和長度的字元,有些情況下若是中文,請使用兩個百分號 表示。比如 select from user where u name like 三 將會把u name為 張三 張貓三 三腳貓 唐三藏 等等有 三 的記錄全找出來。另外,如果需要找出u name中既有 三...

mysql 匹配字元類 MySQL正則匹配字元類

我不懂mysql中匹配字元類到底怎麼理解?upper 表示任意大寫字母,同 a z 通過下面這一句得到出現過大寫字母的prod name select prod name from products where prod name regexp upper 使用 upper 則會全部輸出。同樣的道理...

mysql模糊匹配

1,表示任意0個或多個字元。可匹配任意型別和長度的字元,有些情況下若是中文,請使用兩個百分號 表示。比如 select from user where u name like 三 將會把u name為 張三 張貓三 三腳貓 唐三藏 等等有 三 的記錄全找出來。另外,如果需要找出u name中既有 三...