Skip to content

PINYIN

功能描述

将输入的合法字符串中的汉字字符转换为对应的汉语拼音,非汉字字符保持不变。支持以下字符集编码的数据库环境:

  • BIG5
  • GB2312
  • GB18030
  • GBK
  • UTF-8

注意:

当前版本暂不支持多音字,默认返回汉字的最常用拼音。 比如:“重复”、“重量”、“德高望重”或“卷土重来”等由多音字组成的词语或者成语,可能存在返回的拼音与汉字不一致的情况。

语法格式

PINYIN(expr)

参数说明

expr:一个合法的字符串,可以是汉字与其它可打印字符的组合,如:'-123ABC测试-'

函数返回类型

CHAR数据类型。

示例

sql
-- 创建不同编码的测试数据库
SQL> CREATE DATABASE temp_db_gbk CHAR SET GBK;

SQL> CREATE DATABASE temp_db_utf8 CHAR SET UTF8;

-- 验证字符集配置
SQL> SELECT DB_NAME, CHAR_SET FROM ALL_DATABASES WHERE DB_NAME IN ('TEMP_DB_GBK', 'TEMP_DB_UTF8');

DB_NAME | CHAR_SET | 
------------------------------------------------------------------------------
TEMP_DB_GBK | GBK |
TEMP_DB_UTF8 | UTF8 |

-- 在GBK编码数据库执行
SQL> USE temp_db_gbk;

SQL> SELECT PINYIN('-123ABC测试-') FROM dual;

EXPR1 | 
------------------------------------------------------------------------------
-123ABCceshi-|

-- 在UTF8编码数据库执行
SQL> USE temp_db_utf8;

SQL> SELECT PINYIN('-123ABC测试-') FROM dual;

EXPR1 | 
------------------------------------------------------------------------------
-123ABCceshi-|

-- 测试完成删除测试数据库
SQL> USE system;
 
SQL> DROP DATABASE temp_db_utf8;
 
SQL> DROP DATABASE temp_db_gbk;