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

语法

  1. TRANSLATE(c1,c2,c3)

参数

参数

说明

c1

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

c2

查询原始的字符集。

c3

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

说明

  • c1c2c3 的数据类型可以是 CHARVARCHAR2NCHARNVARCHAR2CLOB

  • 如果 c3 长度大于 c2,则 c3 长出后面的字符无效;

  • 如果 c3 长度小于 c2,则 c2 长出后面的字符均替换为空(删除);

  • 如果 c3 长度为 0,则返回空字符串;

  • 如果 c2 里字符重复,按首次位置为替换依据。

返回类型

返回 CHARVARCHAR2NCHARNVARCHAR2CLOB 类型字符。

示例

执行以下语句:

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

查询结果如下:

  1. +---------------------------------+
  2. | TRANSLATE('HEMISSYOU','HE','I') |
  3. +---------------------------------+
  4. | i miss you |
  5. +---------------------------------+