2011-09-03 67 views
6
SELECT SOUNDEX ('Smith'), SOUNDEX ('Smythe'); 
----- ----- 
S530 S530 

(1 row(s) affected) 

这里,由SOUNDEX()函数返回的值是“S530”。SQL- soundex函数

请问您如何在SOUNDEX()函数中处理输入表达式。 在这个例子中,第一个字符是“S”,因为它是输入表达式中的第一个字符,但其余三位数字是如何计算的?

回答

9

看看一个这个article

代码的第一个字母对应 名字的第一个字母。的代码的其余部分由来自 衍生三位数字的音节根据以下代码:

  • 1 = B,F,P,V
  • 2 = C,G,J,K ,Q,S,X,Z
  • 3 = d,T
  • 4 = L
  • 5 = M,N
  • 6 = R

个字母用相同的Soundex码,A,E,I,O,U,H,W,Y, 和一些前缀被忽略......

因此对于史密斯和斯迈思代码像这样创建的:

S S -> S 
m m -> 5 
i y -> 0 
t t -> 3 
h h -> 0 
    e -> - 
+0

非常感谢..文章真的很不错.. –