TRANSLATE 替换字符串

语法

TRANSLATE(c1,c2,c3)

功能

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

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

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

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

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

参数

  • c1 希望被替换的字符或变量 

  • c2 查询原始的字符集

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

返回值

字符型

示例

(1)使用 TRANSLATE 函数替换字符串中所有的字符串 “l” 替换成 “L”,如下:

SQL> select TRANSLATE('hello world','l','L') from dual;

TRANSLATE('
-----------
heLLo worLd

(2)使用 TRANSLATE 函数替换中文字符串,如下:

SQL> select TRANSLATE('我爱学习','我爱','好好') from dual;

TRANSLAT
--------
好好学习

(3)如果 c3 长度大于 c2,则 c3 长出后面的字符无效,如下:

SQL> select TRANSLATE('我爱学习','我爱','我非常爱') from dual;

TRANSLAT
--------
我非学习

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

SQL> select TRANSLATE('我爱学习','我爱','我') from dual;

TRANSL
------
我学习
关于
本网站专注于 Java、数据库(MySQL、Oracle)、Linux、软件架构及大数据等多领域技术知识分享。涵盖丰富的原创与精选技术文章,助力技术传播与交流。无论是技术新手渴望入门,还是资深开发者寻求进阶,这里都能为您提供深度见解与实用经验,让复杂编码变得轻松易懂,携手共赴技术提升新高度。如有侵权,请来信告知:hxstrive@outlook.com
公众号