阅读(2504) (0)

OceanBase TRANSLATE

2021-06-18 11:31:09 更新

TRANSLATE​ 函数将字符表达式值中,指定字符替换为新字符。多字节符(汉字、全角符等),按 1 个字符计算。

语法

TRANSLATE(c1,c2,c3)

参数

参数

说明

c1

希望被替换的字符或变量。

c2

查询原始的字符集。

c3

替换新的字符集,将 c2 对应顺序字符,替换为 c3 对应顺序字符 。

说明 
  • c1​、​c2​ 和 ​c3​ 的数据类型可以是 ​CHAR​、​VARCHAR2​、​NCHAR​、​NVARCHAR2​ 或 ​CLOB​。
  • 如果 ​c3​ 长度大于 ​c2​,则 ​c3​ 长出后面的字符无效;
  • 如果 ​c3​ 长度小于 ​c2​,则 ​c2​ 长出后面的字符均替换为空(删除);
  • 如果 ​c3​ 长度为 0,则返回空字符串;
  • 如果 ​c2​ 里字符重复,按首次位置为替换依据。

返回类型

返回 ​CHAR​、​VARCHAR2​、​NCHAR​、​NVARCHAR2​ 或 ​CLOB​ 类型字符。

示例

执行以下语句:

SELECT TRANSLATE('he miss you','he','i') FROM DUAL;

查询结果如下:

+---------------------------------+
| TRANSLATE('HEMISSYOU','HE','I') |
+---------------------------------+
| i miss you                      |
+---------------------------------+