translate replace区别

数据:
fuyou@ORCL> select ename||sal from emp;

ENAME||SAL
------------------------------------------------------------
SMITH800
ALLEN1600
WARD1250
JONES2975
MARTIN1250
BLAKE2850
CLARK3675
SCOTT3000
KING7500
TURNER1500
ADAMS1100
JAMES950
FORD3000
MILLER1300

已选择14行。


利于translate将字母全部改成z
fuyou@ORCL>  select data ,translate(lower(data),'abcdefghijklmnopqrstuvwxyz',rpad('z',26,'z'))
2 from
3 ( select ename||sal as data from emp);

DATA TRANSLATE(LOWER(DATA),'ABCDEFGHIJKLMNOPQRSTUVWXYZ',RPAD('Z',26,'Z'))
------------------------------------------------------------ ------------------------------------------------------------------------------------------------------------------------
SMITH800 zzzzz800
ALLEN1600 zzzzz1600
WARD1250 zzzz1250
JONES2975 zzzzz2975
MARTIN1250 zzzzzz1250
BLAKE2850 zzzzz2850
CLARK3675 zzzzz3675
SCOTT3000 zzzzz3000
KING7500 zzzz7500
TURNER1500 zzzzzz1500
ADAMS1100 zzzzz1100
JAMES950 zzzzz950
FORD3000 zzzz3000
MILLER1300 zzzzzz1300

利于replace删除z
fuyou@ORCL> select data ,replace(translate(lower(data),'abcdefghijklmnopqrstuvwxyz',rpad('z',26,'z')),'z')
2 from
3 ( select ename||sal as data from emp);

DATA REPLACE(TRANSLATE(LOWER(DATA),'ABCDEFGHIJKLMNOPQRSTUVWXYZ',RPAD('Z',26,'Z')),'Z')
------------------------------------------------------------ ------------------------------------------------------------------------------------------------------------------------
SMITH800 800
ALLEN1600 1600
WARD1250 1250
JONES2975 2975
MARTIN1250 1250
BLAKE2850 2850
CLARK3675 3675
SCOTT3000 3000
KING7500 7500
TURNER1500 1500
ADAMS1100 1100
JAMES950 950
FORD3000 3000
MILLER1300 1300

已选择14行。

translate 是对每字符替换

replace 字符串删除
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值