2011-04-01 42 views

回答

0

我不知道SQL有一个SELECT WHERE A SORTA_OF_LIKE B但查找“Levenshtein距离”,也许是一种做你想做的事情的方式。

1

如果有某种模式的变化,你可以使用正则表达式尝试,它的MySQL似乎支持(我们使用Postgres的,这肯定不会):

http://dev.mysql.com/doc/refman/5.1/en/regexp.html

如果不是的话,恐怕您必须在您的应用中执行此操作。正如Pete提到的,有各种算法可以找到类似的声音,我们使用Levenshtein距离,Simhashes的Hamming距离和Kölner语音编码来达到这个目的。

+0

你不能使用正则表达式来选择,只是返回一个真/假(匹配/不匹配)或那个效果。 – dogmatic69 2011-04-01 14:22:42

+0

@ domatic69在Postgres中有类似'SELECT record FROM myrecords WHERE record〜'A';'的东西。 http://oreilly.com/pub/a/databases/2006/02/02/postgresq_regexes.html – 2011-04-01 15:44:53

相关问题