Oracle中各种函数使用介绍

  • 去除字符串前后空格

  1. 1  trim(string):去除指定字符串string的左右空格,

            注意,string中间有空格的时候是不会被去除的,全角空格此方法不能去除,采用1.4的方法String1也设置为全角空格可行。

        CASE: SELECT trim('    aaa  bbb  ccc     ') FROM dual; --------- 输出结果是:aaa  bbb  ccc两边空格都去除了
  1. 2  ltrim(string):去除指定字符串string左侧的空格
        CASE: SELECT ltrim('   aaa   bbb   ccc   ') FROM dual;--------- 输出结果是:aaa bbb ccc   右侧有空格
  1. 3  rtrim(string):去除指定字符串string右侧的空格
        CASE: SELECT rtrim('   aaa   bbb  ccc  ') FROM dual;--------- 输出结果是:     aaa bbb ccc左侧有空格
  1. 4  trim   (both string1 FROM string2)  :  从string2中去除两侧(默认是both(both可以不写),即左右侧都去掉)的string1字符,

            注意,string1只能是单个字符。

        CASE:SELECT trim(both 'a' from '   aaa  bbb  aa  ') FROM dual;------输出结果是:   aaa bbb aa  两边的a都没有去掉空格也在
             SELECT trim(both 'a' from ' aaa  bbb  aacc') FROM dual;------输出结果是:  aaa  bbb  aacc两边的a都没有去掉
             SELECT trim(both 'a' from 'aaa  bbb  aa') FROM dual;------输出结果是:  bbb  两边的a都去掉了b两边的空格还在

            注:由上测试可以看出------trim的所有方法再去除字符时,只要遇到与匹配规则不同的字符,就不在往下进行匹配了,leading ,trailing  也是的;

  1. 5  trim   (leading string1 FROM string2):从string2中去除左侧的string1字符
        CASE:SELECT trim(leading ' '  from  '    aaa  bbb  ccc   ') FROM dual;------输出结果是:aaa  bbb  ccc   右侧空格还在左侧空格被去除
  1. trim   (trailing  string1 FROM string2):从string2中去除右侧的string1字符
        CASE:SELECT trim(trailing ' '  from  '    aaa  bbb  ccc   ') FROM dual;------输出结果是:    aaa  bbb  ccc左侧空格还在右侧空格去除
  1. 7  ltrim(string1,string2): 从string1的左侧去除string2
        CASE:SELECT ltrim('abcecba','abc') FROM dual;--------输出结果是:ecba;
  1. 8  rtrim(string1,string2): 从string1的右侧去除string2
        CASE:SELECT rtrim('abcecba','abc') FROM dual; -------输出结果是:abce;
             SELECT rtrim('eabccba','abce') FROM dual; -------输出结果是:空;

注:ltrim(string1,string2),rtrim(string1,string2);string2可以理解为是多个字符组成的“字符集合”,而不是“字符串”,因为在以string2为基础对string1做字符去除的时候,string2并不是作为一个字符串那样的整体来与string1匹配的,而是单个单个字符的匹配。比如string1='abccba',string2='abc',如果string2作为一个整体来匹配,显然不管是用ltrim还是rtrim函数,对string1操作之后返回的结果应该是'cba',但实际上不是,返回的是一个空串!直到在string1中遇上某个字符,该字符不在string2字符集合中,不在往下匹配;和上面单个字符的类似,只不过一个是字符集合,一个是单个字符串。

此文章持续更新

            

转载于:https://my.oschina.net/u/4118726/blog/3039772

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值