SOUNDEX (Transact-SQL)
返回一个由四个字符组成的代码 (SOUNDEX),用于评估两个字符串的相似性。
语法
SOUNDEX ( character_expression )
返回类型
varchar
注释
SOUNDEX 将字母数字字符串转换成由四个字符组成的代码,用于查找发音相似的词或名称。代码的第一个字符是 character_expression 的第一个字符,代码的第二个字符到第四个字符是数字。除非元音字母是字符串的第一个字母,否则 character_expression 中的元音字母将被忽略。可以嵌套字符串函数。
示例
以下示例显示了 SOUNDEX 函数及相关的 DIFFERENCE 函数。在第一个示例中,返回所有辅音字母的标准 SOUNDEX 值。Smith 和 Smythe 返回的 SOUNDEX 结果相同,因为不包括所有元音字母、字母 y、连写字母和字母 h。
-- Using SOUNDEX
SELECT SOUNDEX ('Smith'), SOUNDEX ('Smythe');
下面是结果集:
----- -----
S530 S530
(1 row(s) affected)
DIFFERENCE 函数用于比较 SOUNDEX 模式结果的差异。以下示例显示两个仅元音字母不同的字符串。返回的差异为 4(可能的最小差异)。
-- Using DIFFERENCE
SELECT DIFFERENCE('Smithers', 'Smythers');
GO
下面是结果集:
-----------
4
(1 row(s) affected)
在以下示例中,字符串的辅音字母不同;所以,返回的差异为 2,表示差异更大。
SELECT DIFFERENCE('Anothers', 'Brothers');
GO
下面是结果集:
-----------
2
(1 row(s) affected)