SQL文本处理函数--soundex()函数

函数soundex()作用

  soundex是一个将任何文本串转换为描述其语音表示的字母数字模式的算法。soundex考虑了类似的发音字符和音节,使得对字符串进行发音比较而不是字母比较。虽然,soundex不是SQL概念,但是多数DBMS都提供对soundex的支持。

例子

  这理解起来有些拗口,下面通过一个实际的例子讲一下soundex()函数的用法:
  下面是一个名为customers的表:
  通过下面的MySQL语句:

SELECT *
FROM customers;

查看customers表如下图。

 从表数据中看到一个cust_contact为Y Sam的顾客,但是如果这是错误的输入,此联系名实际上应该是 Y San, 该怎么办呢?,显然按照正确的联系名搜索不会返回数据。现在soundex()函数就该大现身手了,使用soundex()函数进行搜索,它匹配所有发音类似于 Y San的联系名
现在输入SQL语句:

SELECT *
FROM customers
WHERE  soundex(cust_contact) = soundex('Y San');

执行结果显示:

总结

在这个例子中,WHERE子句使用soundex()函数把cust_contact列值和搜索字符串转换为它们的soundex值。因为Y Sam 和 Y San发音相似,所以它们的soundex值匹配,因此WHERE子句正确地过滤了所需的数据。更多内容见《Mysql必知必会》

原文地址:https://www.cnblogs.com/cy0628/p/15016157.html