你好,游客 登录 注册 搜索
背景:
阅读新闻

Oracle字符串中前后包含空格处理方法

[日期:2016-11-29] 来源:Linux社区  作者:yhdmy [字体: ]

一、问题描述

今天碰到个问题,有个列中的字段前后都有不同数量的空格,开发人员要求去掉这些空格。其实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.

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

本文永久更新链接地址http://www.linuxidc.com/Linux/2016-11/137684.htm

linux
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款