MySQL查找类似的字符串

时间:2011-05-20 10:12:01

标签: mysql

我有一个12个字符代码的InnoDB数据库表,通常需要由用户输入。 有时,用户将错误地输入代码(例如,键入小写L而不是1等)。 我正在尝试编写一个查询,它会找到与他们输入的代码类似的代码,但使用LIKE'%code%'会给我太多结果,其中很多只包含一个匹配的字符。

有没有办法进行更详细的检查?

编辑 - 不需要区分大小写。

任何建议表示赞赏。

感谢。

2 个答案:

答案 0 :(得分:-1)

看看soundex。通常拼写错误的字符串具有相同的soundex代码,因此您可以查询:

where soundex(Code) like soundex(UserInput)

答案 1 :(得分:-1)

在没有通配符%的情况下使用

SELECT `code` FROM table where code  LIKE 'user_input'

这也将检查空间

SELECT 'a' = 'a ', return 1  whereas SELCET 'a' LIKE 'a ' return 0

reference