如何在SQL中找到不完全相同但相似的重复字符串值

我有一个列名为company_name(字符串)的表,我需要找到此列的重复值,我不能使用distinct或group by,因为它们不完全相同。 例如:
atec,inc
atec inc
ate inc  

abc group
abc groups
abc grups
我如何在sql中找到这样的条目,或者是否有任何ruby库。     
已邀请:
如果对变体有某种模式,你可以尝试使用正则表达式,MySQL似乎支持(我们使用Postgres,肯定会这样做): http://dev.mysql.com/doc/refman/5.1/en/regexp.html 如果不是这样,我担心你必须在你的应用程序中这样做。正如Pete所提到的,有各种算法可以找到相似的声音,我们使用/已经使用了Levenshtein距离,Hamming的simhashes距离和Kölner语音编码。 http://en.wikipedia.org/wiki/Levenshtein_distance http://de.wikipedia.org/wiki/K%C3%B6lner_Phonetik http://en.wikipedia.org/wiki/Hamming_distance     
这对功能索引来说是一个完美的用途,但由于我认为MySQL不具备其中之一,我可以建议在MySQL中进行全文搜索吗? http://dev.mysql.com/doc/refman/5.5/en/fulltext-search.html 特别是布尔搜索: http://dev.mysql.com/doc/refman/5.5/en/fulltext-boolean.html 此外,如果您不熟悉单词的词干,那么这个强大的概念也可以帮助您增加搜索的检索。 希望有所帮助。     
我不知道SQL有一个SELECT WHERE A SORTA_OF_LIKE B但查找“Levenshtein距离”,也许是一种做你想要的方式。     

要回复问题请先登录注册