[英]Given a string of words: How to find every word (case insensitive) in a varchar(1000) column in MySQL ignoring punctuation?
我有兩個數據庫a
和b
,其中有科學論文的標題。 我想將這些數據庫合並到一個數據庫c
。
a
可能包含不在b
中的標題,反之亦然。 a
和b
。 首先,我想到了在MySQL中使用levenstein距離函數來匹配兩個數據庫中的相同標題,但是在查看數百萬行時,我不知道這樣做是否足夠好。 然后我想到了全文搜索來匹配標題,但據我所知,全文搜索不匹配常用詞,因此在實際上不同的相似標題上,匹配效果不佳。
結果,我不需要100%的匹配過程。 但我想讓比率盡可能高。 有什么建議嗎?
想到的一個想法是創建一個包含文本的搜索列,其中不帶任何標點符號並且使用小寫形式,然后進行比較。
如果您要使用其他語言或平台來與mySQL結合使用,那么在那里進行規范化可能是最容易的事情-我想不出帶有剝離標點符號之類的本機mySQL函數。 確實有可能,但可能僅使用一組非常復雜的REPLACE()
調用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.