soundex('abcd')为什么运行的结果都是A120     而不是A123 

解决方案 »

  1.   

    SOUNDEX函数的语法:   SOUNDEX(string)   计算语音的算法:   1.保留字符串首字母,但删除a、e、h、i、o、w、y   2.将下表中的数字赋给相对应的字母   (1) 1:b、f、p、v   (2) 2:c、g、k、q、s、x、z   (3) 3:d、t   (4) 4:l   (5) 5:m、n   (6) 6:r   3. 如果字符串中存在拥有相同数字的2个以上(包含2个)的字母在一起(例如b和f),或者只有h或w,则删除其他的,只保留1个   4.只返回前4个字节,不够用0填充   示例:   soundex(’two’),soundex(’too’),soundex(’to’),他们的结果都是T000   soundex(’cap’),soundex(’cup’),他们的结果都是C100   soundex(’house’),soundex(’horse’),他们的结果都分别是H200,H620 
      

  2.   


    SQL> select soundex('abcd') from dual;SOUN
    ----
    A123
      

  3.   


    SQL> select soundex('abcd') from dual;SOUNDEX(
    --------
    A123