常见的用法是去除空格,有多少人不知道它们其实还可以做到去除空格,它有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函数,因为一个是指定字符,一个是指定下标