Oracle TRIM函数是很常见的函数,下面对Oracle TRIM函数的语法作了详尽的阐述说明,希望可以让您对Oracle TRIM函数有更深的认识。

如果提到Oracle TRIM函数,最简单的功能就是使用它来去除字符串的行首和行尾的空格,这个功能也是大家使用频率最高的一种。

然而Oracle TRIM函数其实是具有删除“任意指定”字符的功能,不可谓不牛。我们来一次体验之旅。

1.先看一下Oracle TRIM函数的完整语法描述

TRIM([ { { LEADING | TRAILING | BOTH }

[ trim_character ]

| trim_character

}

FROM

]

trim_source

)

以上语法引自于Oracle 10gR2官方文档:http://download.oracle.com/docs/ ... 0/img_text/trim.htm

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

2.最简单的用法开始不使用任何参数:

gloria@www.dweye.net> select trim (' DWEYE ') "TRIM e.g." from dual;

TRIM e.g

--------

DWEYE

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

3.其实第一种常用的方法等同于下面带有“BOTH”参数的写法gloria@www.dweye.net> select trim (both from ' DWEYE ') "TRIM e.g." from dual;

TRIM e.g

--------

DWEYE

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

4.既然试用了BOTH参数,我们再看一下“TRAILING”和“LEADING”参数效果gloria@www.dweye.net> select trim (trailing from ' DWEYE ') "TRIM e.g." from dual;

TRIM e.g.

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

DWEYE

gloria@www.dweye.net> select trim (leading from ' DWEYE ') "TRIM e.g." from dual;

TRIM e.g.

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

DWEYE

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

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

5.“trim_character”参数粉墨登场

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

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

gloria@www.dweye.net> select trim ('x' from 'xxxxDWEYExxxx') "TRIM e.g." from dual;

TRIM e.g

--------

DWEYE

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

gloria@www.dweye.net> select trim (both 'x' from 'xxxxDWEYExxxx') "TRIM e.g." from dual;

TRIM e.g

--------

DWEYE

gloria@www.dweye.net> select trim (trailing 'x' from 'xxxxDWEYExxxx') "TRIM e.g." from dual;

TRIM e.g.

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

xxxxDWEYE

gloria@www.dweye.net> select trim (leading 'x' from 'xxxxDWEYExxxx') "TRIM e.g." from dual;

TRIM e.g.

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

DWEYExxxx

6.需要注意的地方这里的“trim_character”参数只允许包含一个字符,不支持多字符。

报错信息如下:

gloria@www.dweye.net> select trim (leading 'xy' from 'xyxxDWEYExyyx') "TRIM e.g." from dual;

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

*

ERROR at line 1:

ORA-30001: trim set should have only one character

既然TRIM不能满足我们删除只剩“DWEYE”字符串的要求,有么有其他手段呢?of course有。我们使用RTRIM和LTRIM“连环拳”完成这个任务。

1)使用RTRIM

gloria@www.dweye.net> select rtrim('xyxxDWEYExyyx','xy') "e.g." from dual;

e.g.

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

xyxxDWEYE

2)使用LTRIM

gloria@www.dweye.net> select ltrim('xyxxDWEYExyyx','xy') "e.g." from dual;

e.g.

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

DWEYExyyx

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

gloria@www.dweye.net> select ltrim(rtrim('xyxxDWEYExyyx','xy'),'xy') "e.g." from dual;

e.g.

--------

DWEYE

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

7.小结

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

以下是其它网友的补充:

如 trim('字符1' from '字符串2') ,字符1只能是单个字符。

1. trim()删除字符串两边的空格。

2. ltrim()删除字符串左边的空格。

3. rtrim()删除字符串右边的空格。

4. trim('字符1' from '字符串2') 分别从字符2串的两边开始,删除指定的字符1。

5. trim([leading | trailing | both] trim_char from string) 从字符串String中删除指定的字符trim_char。

leading:从字符串的头开始删除。

trailing:从字符串的尾部开始删除。

borth:从字符串的两边删除。

6. tim()只能删除半角空格。

For example:

trim(' tech ') would return 'tech';

trim(' ' from ' tech ') would return 'tech';

trim(leading '0' from '000123') would return '123';

trim(trailing '1' from 'Tech1') would return 'Tech';

trim(both '1' from '123Tech111') would return '23Tech';

oracle中的trim函数

Oracle中的trim函数是用来删除给定字符串或者给定数字中的头部或者尾部的给定字符。

trim函数具有如下的形式

trim([leading/trailing/both][匹配字符串或数值][from][需要被处理的字符串或数值])

这里如果指明了leading表示从删除头部匹配的字符串,如果指明了trailing表示从删除尾部匹配的字符串,如果指明了both,或者不指明任何位置,则两端都将被删除

如果不指明任何匹配字符串或数值则认为是空格,即删除前面或者后面的空格。

trim函数返回的类型是varchar2

下面是一些例子:

截去了数字7500的后面的两个0

SQL> select trim(0 from 7500) from dual;

TRIM

—-

75

下面的例子截去了' 中秋八月中'前后的两个'中'字

SQL> select trim('中‘ from ‘中秋八月中‘) as 诗 from dual;

——————

秋八月

下面的例子截去了' 半夜二更半'前面的一个'半'字

SQL> select trim(leading ‘半‘ from ‘半夜二更半‘) as 诗 from dual;

————————

夜二更半

oracle dbms_lob trim,oracle中的trim函数使用介绍相关推荐

  1. oracle同sql中isnull无法,SQL中的ISNULL函数使用介绍

    这篇文章主要为大家详细介绍了SQL中的ISNULL函数使用介绍,具有一定的参考价值,可以用来参考一下. 感兴趣的小伙伴,下面一起跟随512笔记的小编两巴掌来看看吧! ISNULL 使用指定的替换值替换 ...

  2. python中mean的用法_python 的numpy库中的mean()函数用法介绍

    1. mean() 函数定义: numpy.mean(a, axis=None, dtype=None, out=None, keepdims=)[source] Compute the arithm ...

  3. python 的numpy库中的mean()函数用法介绍

    这篇文章主要介绍了python 的numpy库中的mean()函数用法介绍,具有很好对参考价值,希望对大家有所帮助.一起跟随小编过来看看吧 mean() 函数定义: 2 mean()函数功能: 求取均 ...

  4. 【新手指南】Python中的listdir()函数的介绍

    [新手指南]Python中的listdir()函数的介绍 在用pytorch导入dataset的时候对listdir()函数产生的是文件还是文件夹一直都有疑问,所以自己先在网上找了一段小代码调试,先小 ...

  5. python average函数怎么用_python 的numpy库中的mean()函数用法介绍

    1. mean() 函数定义: numpy.mean(a, axis=None, dtype=None, out=None, keepdims=)[source] Compute the arithm ...

  6. php中函数trim,PHP中的trim函数怎么用

    PHP中的trim函数的用法:[trim()]函数是php中的内置函数,用于删除字符串左右两边的空格或预定义字符,并返回修改后的字符串,函数语法为:[trim($string, $charlist)] ...

  7. [MSSQL]SQL Server中的RAND函数的介绍和区间随机数值函数的实现

    转自:http://www.cnblogs.com/dzy863/p/5063558.html 工作中会遇到SQL Server模拟数据生成以及数值列值(如整型.日期和时间数据类型)随机填充等等任务, ...

  8. mysql的datepart函数_MySQL中的 DATE_FORMAT 与 SQL 中的 DATEPART()函数使用介绍

    本小白最近学习MySQL,因为之前是已经有学过微软大佬的SQL Server所以自认为理解的还是稍快的(滑鸡),好了说正事. 今天在写一个查询语句时,需要用到 一个日期函数:DATEPART( ) 因 ...

  9. oracle函数isnull,SQL中的ISNULL函数使用介绍

    ISNULL 使用指定的替换值替换 NULL. 语法 ISNULL ( check_expression , replacement_value ) 参数 check_expression 将被检查是 ...

  10. oracle isnull的用法,SQL中的ISNULL函数使用介绍

    使用指定的替换值替换 NULL. 语法 ISNULL ( check_expression , replacement_value ) 参数 check_expression 将被检查是否为 NULL ...

最新文章

  1. TVM darknet yolov3算子优化与量化代码的配置方法
  2. java读avro的流_0016-Avro序列化反序列化和Spark读取Avro数据
  3. GNN、RL强势崛起,CNN初现疲态?这是ICLR 2021最全论文主题分析
  4. Flume TailDir 基本流程
  5. 【Mysql】_1在centos7虚拟机上完成Mysql环境部署
  6. android清理缓存功能吗,Android清理缓存功能实现
  7. 【转载】一天之内上手.Net+WAP项目
  8. Java中Date日期以及日期格式化
  9. 如何部署WAR到tomcat?
  10. mac 无法安装软件解决方法 因为Apple无法检查其是否包含恶意软件
  11. Reflex WMS入门系列三十七:三种不同风格的RF界面
  12. 图片懒加载及资源节流
  13. Canvas流星雨特效
  14. readline library not found
  15. UI设计师高效切图6大步骤
  16. AT89S52与AT89c51的区别
  17. 编写高效的java代码
  18. 【密码学基础】07 分组加密工作模式
  19. cent os运维知识
  20. MySQL8.0修改用户密码验证

热门文章

  1. CAN记录仪:便捷的记录及提取工具CANlog-VCI
  2. 实现一个简单的SpringIOC容器
  3. html如何选择爱好,兴趣.html
  4. 【java爬虫】jsoup爬取网页数据-搜索算法评测/竞品评测
  5. 亮度与色阶看懂直方图
  6. Vue回炉重造之搭建考试答卷系统
  7. js判断移动端浏览器
  8. POI-TL导出Word文档(支持WPS查看)
  9. 华为鸿蒙系统还不成熟,华为鸿蒙系统终于来了!只因这三点,苹果将面临空前一劫!...
  10. java键盘有时失效_Java-摆动键盘无响应