【Oracle】你真的会用ltrim/rtrim函数吗?

常见的用法是去除空格,有多少人不知道它们其实还可以做到去除空格,它有ltrim()、ltrim(x,y)方法

-------   去两边空格,去左空格,去右空格    --------  
select trim('    X-rapido    ') name from dual;   返回 'X-rapido'  
select ltrim('    X-rapido    ') name from dual;  返回 'X-rapido    '  
select rtrim('    X-rapido    ') name from dual;  返回 ''    X-rapido''   
select trim(null) name from dual;   返回null

ltrim(x,y)语法

ltrim(x,y) 函数是按照y中的字符一个一个截掉x中的字符,并且是从左边开始执行的,只要遇到y中有的字符, x中的字符都会被截掉, 直到在x的字符中遇到y中没有的字符为止函数命令才结束 

select ltrim('abcdabababe','ab') word from dual;        -- 结果:cdabababe
select ltrim('aaaaaa','a') word from dual;                    -- 结果:null空
select ltrim('109224323','109') nums from dual;         -- 结果:224323
select ltrim('10900094323','109') nums from dual;     -- 结果:4323
select ltrim('10900111000991110224323','109') nums from dual;      -- 结果:224323
select ltrim('109200111000991110224323','109') nums from dual;    -- 结果:200111000991110224323
select ltrim('902100111000991110224323','109') nums from dual;    -- 结果:2100111000991110224323

注意:Oracle区分大小写

select ltrim('abcdab','B') word from dual;    -- 结果:abcdab

至于rtrim函数,与ltrim同理,一个从左边开始,一个从右边开始

截取字符串的功能不同于substr函数,因为一个是指定字符,一个是指定下标

赞(52) 打赏
未经允许不得转载:优客志 » 数据库
分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏