一、问题描述
今天碰到个问题,有个列中的字段前后都有不同数量的空格,开发人员要求去掉这些空格。其实ORACLE早就替我们准备好trim函数来处理这样的问题。让我们实验一下,学习记住trim这个小东东。
二、实验
1.创建测试数据
点击(此处)折叠或打开
- SAM@OCM11G >create table test_space(id int,name varchar2(10));
-
- Table created.
-
- SAM@OCM11G >insert into test_space values (1,'sam');
-
- 1 row created.
-
- SAM@OCM11G >insert into test_space values (2,' sam ');
-
- 1 row created.
-
- SAM@OCM11G >insert into test_space values (3,' sam ');
-
- 1 row created.
-
- SAM@OCM11G >commit;
-
- Commit complete.
2.查询数据发现问题,并做字符统计
点击(此处)折叠或打开
- SAM@OCM11G >select * from test_space;
-
- ID NAME
- ---------- ----------
- 1 sam
- 2 sam
- 3 sam
-
- SAM@OCM11G >select id,length(name) from test_space;
-
- ID LENGTH(NAME)
- ---------- ------------
- 1 3
- 2 5
- 3 8
3.使用trim去掉空格
点击(此处)折叠或打开
- SAM@OCM11G >select id,length(trim(name)) from test_space;
-
- ID LENGTH(TRIM(NAME))
- ---------- ------------------
- 1 3
- 2 3
- 3 3
-
- SAM@OCM11G >update test_space set name=trim(name);
-
- 3 rows updated.
-
- SAM@OCM11G >select * from test_space;
-
- ID NAME
- ---------- ----------
- 1 sam
- 2 sam
- 3 sam
4.检查(问题已处理)
点击(此处)折叠或打开
- SAM@OCM11G >select id,length(name) from test_space;
-
- ID LENGTH(NAME)
- ---------- ------------
- 1 3
- 2 3
- 3 3
三、总结
一个小小的trim函数,真是难者不会,会者不难。通过这个小案例,我又多掌握了ORACLE的一个小功能,学习脚步不能停。好久没有发文了,再给自己一针强心剂。加油 Sam!Where there is a will, there is a way.
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/26148431/viewspace-2129242/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/26148431/viewspace-2129242/