类别:

字符串和二进制函数

SOUNDEX_P123

返回包含输入字符串的语音表示形式的字符串,并在第一个和第二个字母使用相同数字时保留第二个字母的 Soundex 代码数字。

此函数与 SOUNDEX 函数类似,但输入字符串的第一个和第二个字母使用相同的 Soundex 代码数字的情况除外。在这些情况中,SOUNDEX 函数将忽略第二个字母的数字,而 SOUNDEX_P123 函数将保留第二个字母的数字。一些数据库系统(例如 Teradata)使用 Soundex 算法的这种变体。

例如,对于输入字符串 Pfister,前两个字母(Pf)相邻并共享相同的 Soundex 代码数字 (1)。

  • SOUNDEX('Pfister') 忽略第二个字母 (1) 的 Soundex 代码数字并返回 P236

  • SOUNDEX_P123('Pfister') 保留第二个字母的 Soundex 代码数字并返回 P123

另请参阅:

SOUNDEX

语法

SOUNDEX_P123( <varchar_expr> )
Copy

实参

varchar_expr

返回发音表示形式的字符串。字符串应使用拉丁文或 Unicode 字符集。

返回

返回的值为包含输入字符串的发音表示形式的 VARCHAR。换句话说,返回值是一个字符串(不是发音),表示输入字符串的发音(而不是拼写)。

如前所述,如果第一个和第二个字母使用相同的 Soundex 代码,则该函数将保留第二个字母的 Soundex 代码数字。

有关其他信息,请参阅 SOUNDEX 函数文档中的 返回

使用说明

请参阅 SOUNDEX 函数文档中的 使用说明

示例

下面的示例展示了 SOUNDEX 函数和 SOUNDEX_P123 函数的返回值的差异:

SELECT SOUNDEX('Pfister'),
       SOUNDEX_P123('Pfister'),
       SOUNDEX('LLoyd'),
       SOUNDEX_P123('Lloyd');
+--------------------+-------------------------+------------------+-----------------------+
| SOUNDEX('Pfister') | SOUNDEX_P123('Pfister') | SOUNDEX('Lloyd') | SOUNDEX_P123('Lloyd') |
|--------------------+-------------------------+------------------+-----------------------|
| P236               | P123                    | L300             | L430                  |
+--------------------+-------------------------+------------------+-----------------------+
Copy
语言: 中文