Oracle中的Trim函数是一种非常有用的字符串函数,它可以去除一个字符串中的指定字符。
来看一个例子:假设有一个字符串 " hello world " ,我们使用Trim函数去除空格后,可以得到 "hello world"。
SELECT TRIM(' hello world ') FROM DUAL; -- 输出结果为 "hello world"
从上面这个例子中我们可以看到,Trim函数非常便于去除字符串前后的空格。除了空格以外,Trim函数还支持去除其他字符,比如tab和回车等。
SELECT TRIM(BOTH '\t' FROM ' hello world ') FROM DUAL; -- 输出结果为 "hello world"
同时,我们还可以使用Trim函数只去除字符串前面或后面的指定字符,而不是全部去除。
SELECT TRIM(LEADING '0' FROM '000012345') FROM DUAL; -- 输出结果为 "12345" SELECT TRIM(TRAILING '0' FROM '012345000') FROM DUAL; -- 输出结果为 "012345"
当然,如果我们不需要判断具体要去除哪些字符,只需要去除字符串前后的所有空格,那么也可以使用关键字BOTH,这样就不用明确声明是前缀或后缀了。
SELECT TRIM(BOTH FROM ' hello world ') FROM DUAL; -- 输出结果为 "hello world"
除了去除空格和其他指定字符,我们还可以去除字符串中间的指定字符。这时候,需要结合一下Replace函数同时使用。
SELECT REPLACE('123-45-6789', '-', '') AS REPAIRED_SSN FROM DUAL; -- 输出结果为 "123456789" SELECT TRIM(BOTH '0' FROM REPLACE('0012-345.67', '-', '0')) FROM DUAL; -- 输出结果为 "00123450"
有时候,我们可能需要把Trim函数嵌套在其他函数中,比如:将一个字符串中所有的字符转成小写后再去除前后空格
SELECT TRIM(LOWER(' HElLO ')) FROM DUAL; -- 输出结果为 "hello"
总之,无论在什么场景下,Trim函数都是一个非常实用的字符串函数,它可以大大简化我们对字符串的操作,并且减少代码复杂度。
本文链接:https://my.lmcjl.com/post/12542.html
展开阅读全文
4 评论