TRIM函数最简单的功能就是使用它来去除字符串的行首和行尾的空格,这个功能也是大家使用频率最高的一种。然而在Oracle中TRIM函数其实是具有删除“任意指定”字符的功能,下面就进行详细地讲解。

1.Oracle中trim函数的语法格式

TRIM([ { { LEADING | TRAILING | BOTH }

[ trim_character ]

| trim_character

}

FROM

]

trim_source

)

以上语法引自于Oracle 10gR2官方文档:

http://download.oracle.com/docs/cd/B19306_01/server.102/b14200/img_text/trim.htm

单从这个语法定义上我们就可以看出,小小的TRIM函数蕴含了更多可定制的功能。

2.删除字符串前后的空格

如果trim函数不使用任何参数时,可以去除字符串前后的空格

sec@ora10g> select trim (' SECOOLER ') "TRIM e.g." from dual;

TRIM e.g

--------

SECOOLER

这也是最常见的一种使用方法,都使用默认的参数,默认情况下TRIM会同时删除字符串前后出现的空格。

3.both参数的使用方法

sec@ora10g> select trim (both from ' SECOOLER ') "TRIM e.g." from dual;

TRIM e.g

--------

SECOOLER

“BOTH”参数表示同时去除字符串前后所指定的内容(默认情况下删除空格)。

4.“TRAILING”和“LEADING”参数的使用方法

sec@ora10g> select trim (trailing from ' SECOOLER ') "TRIM函数使用" from dual;

TRIM函数使用

------------

SECOOLER

sec@ora10g> select trim (leading from ' SECOOLER ') "TRIM函数使用" from dual;

TRIM函数使用

------------

SECOOLER

可见,使用“TRAILING”参数可以完成字符串尾部空格的删除功能;而“LEADING”参数正好相反,完成字符串头部空格的删除功能。

也就是说,使用“TRAILING”和“LEADING”参数可以指定空格的删除位置。

5.“trim_character”参数粉墨登场

这个参数改变了“删除空格”的默认行为。

如果想要删除字符串'xxxxSECOOLERxxxx'前后出现的“x”,“trim_character”参数就派上用场了。

sec@ora10g> select trim ('x' from 'xxxxSECOOLERxxxx') "TRIM e.g." from dual;

TRIM e.g

--------

SECOOLER

配合“BOTH”、“TRAILING”和“LEADING”三个参数使用效果如下,与之前演示类似。看结果,不赘述。

sec@ora10g> select trim (both 'x' from 'xxxxSECOOLERxxxx') "TRIM e.g." from dual;

TRIM e.g

--------

SECOOLER

sec@ora10g> select trim (trailing 'x' from 'xxxxSECOOLERxxxx') "TRIM e.g." from dual;

TRIM e.g.

------------

xxxxSECOOLER

sec@ora10g> select trim (leading 'x' from 'xxxxSECOOLERxxxx') "TRIM e.g." from dual;

TRIM e.g.

------------

SECOOLERxxxx

6.需要注意的地方

这里的“trim_character”参数只允许包含一个字符,不支持多字符。

报错信息如下:

sec@ora10g> select trim (leading 'xy' from 'xyxxSECOOLERxyyx') "TRIM e.g." from dual;

select trim (leading 'xy' from 'xyxxSECOOLERxyyx') "TRIM e.g." from dual

*

ERROR at line 1:

ORA-30001: trim set should have only one character

既然TRIM不能满足我们删除只剩“SECOOLER”字符串的要求。我们使用RTRIM和LTRIM“连环拳”完成这个任务。

1)使用RTRIM

sec@ora10g> select rtrim('xyxxSECOOLERxyyx','xy') "e.g." from dual;

e.g.

------------

xyxxSECOOLER

2)使用LTRIM

sec@ora10g> select ltrim('xyxxSECOOLERxyyx','xy') "e.g." from dual;

e.g.

------------

SECOOLERxyyx

3)联合使用RTRIM和LTRIM函数达到我们的目的

sec@ora10g> select ltrim(rtrim('xyxxSECOOLERxyyx','xy'),'xy') "e.g." from dual;

e.g.

--------

SECOOLER

使用RTRIM和LTRIM函数时的注意事项:“xy”不表示整个“xy”字符串进行匹配,而是发现任意的字符“x”或字符“y”均做删除操作。

7.小结

在感受Oracle函数带来便利的同时,建议对每一个常用函数都追本溯源地探究一下,也许在尝试之后您会发现:哦,原来大家经常用到这些方法只是其真实功能的沧海一粟。

oracle trim没用,Oracle中Trim函数的使用方法相关推荐

  1. python中sum函数的使用方法及实例_sum函数的使用方法及实例

    在我很重要的人.QQ相册上看到的英文. BRO有以下两种意思: 1.BRO是brother的简称,意思是兄弟,哥们.是口语中的简称.类似的还有"sister"姐妹的简称为" ...

  2. decode的mysql用法_oracle中decode函数的使用方法示例

    decode的几种用法 1:使用decode判断字符串是否一样 DECODE(value,if1,then1,if2,then2,if3,then3,...,else) 含义为 IF 条件=值1 TH ...

  3. php中icon,php中iconv函数的使用方法

    本篇文章中的内容介绍的是php中iconv函数的使用方法,在这里分享给大家,有需要的朋友可以参考一下 最近在做一个程序,需要用到iconv函数把抓取来过的utf-8编码的页面转成gb2312, 发现只 ...

  4. Excel中Sumproduct函数的使用方法

    1.sumproduct函数的含义 1 1.Sumproduct函数的适用范围,在给定的几组数组中,然后把数组间对应的元素相乘,最后返回乘积之和. 从字面上可以看出,sumproduct有两个英文单词 ...

  5. 计算机中函数counta表示,excel中counta函数的使用方法

    你还在为Excel中counta函数的使用方法而苦恼吗,今天小编教你Excel中counta函数的使用方法,今天,学习啦小编就教大家在counta函数的使用方法. Excel的counta函数的使用方 ...

  6. php excel 函数,php实现excel中rank函数功能的方法

    php实现excel中rank函数功能的方法 发布于 2015-10-28 18:54:25 | 77 次阅读 | 评论: 0 | 来源: 网友投递 PHP开源脚本语言PHP(外文名: Hyperte ...

  7. php中函数的使用方法,php中header()函数的使用方法

    本文主要和大家分享php中header()函数的使用方法,主要以代码的方式和大家讲解,希望能帮助到大家.跳转页面 header('Location:'.$url); //Location和" ...

  8. 计算机一级vlookup函数的使用方法,电子档Excel中vlookup函数的使用方法(图解详细说明)...

    摘要: 在平时的工作中,相信很多问题在学校学习的难以用在工作当中,但是没学习到的知识点倒是出现在了我们的工作中,本文我将给大家以生动的图解(偷笑)加说明的方式详细介绍Excel中vlookup函数的使 ...

  9. html中text函数,Excel中text函数的使用方法

    说到Excel,相信大家都再熟悉不过了,但说到Excel中text函数的使用方法,可能很多人都不太熟悉,下面随学习啦小编一起看看吧. Excel中text函数的使用方法 首先解释一下text函数的基本 ...

  10. Excel中offset函数的使用方法

    Excel中offset函数的使用方法听语音 你还在为Excel中offset函数的使用方法而苦恼吗,今天小编教你Excel中offset函数的使用方法,让你告别Excel中offset函数的使用方法 ...

最新文章

  1. 定制kali linux
  2. Ticket Game CodeForces - 1215D(博弈题,巴什博弈思维)
  3. php post 传递数组参数,php提交post数组参数实例分析
  4. 字符串连接符(Java)
  5. 蚁群算法详解(含例程)
  6. ‘MSOCache’是什么文件?
  7. 操作实例:创建自定义 Windows PE 映像
  8. php版本微信公众号开发
  9. mysql replicator_聊聊rocketmq-mysql的Replicator
  10. android hid 编程,Android Bluetooth HID完成详解,androidhid
  11. 32位的md5校验程序
  12. Python Flask 部署到阿里云服务器
  13. 飞机qar数据可视化_浅谈QAR大数据分析与应用
  14. SpringCloudEurekaClient谁是李鬼?谁是李逵?
  15. 离散余弦变换(含源码)
  16. 1848年欧洲革命:欧洲史上最大规模的革命运动
  17. 《拜占庭系统技术研究综述_范捷》笔记
  18. css实现三角提示框
  19. PotPlayer缺少TrueHD译码器的解决办法
  20. 服务器如何接显示屏,拼接屏如何实现在一个本地信号上投屏多个窗口

热门文章

  1. Pytorch学习之torch----Reduction Ops
  2. 2020-11-17
  3. VS发布网站时,报错提示:“未能将文件xxx复制到xxx,未能找到文件xx”三种解决方案!...
  4. 营救(广度优先搜索)题解
  5. 理解 Android Battery 信息
  6. P1328 [NOIP2014 提高组] 生活大爆炸版石头剪刀布
  7. “大蟒蛇”的养殖教程---“字符串”
  8. 7,词根 - 倒、流
  9. 立志做文艺小清新的技术宅
  10. 京东活动+自动运行脚本+签到2021.05.26更新