Oracle数据库中的SOUNDEX函数


在Oracle数据库中,SOUNDEX函数返回字符串参数的语音表示形式,相对于比较一些读音相同,但是拼写不同的单词是非常有用的。

  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

本文作者:
« 
» 
快速导航

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3