新浪博客

使用SQL语句去除、删除数据库中的空格、回车字符的方法

2012-02-17 11:57阅读:
日常在处理数据数据的时候,经常都有用户在操作一些系统时,把数据直接从Excel复制到系统,然后数据保存在数据库里边去了,但是正是这样的复制动作,把Excel的单元格的空格或者跳行(回车)的格式都保存在了数据库里边,使得查看数据或者数据在被使用的时候出现了问题,那么如何通过SQL语句可以把空格或者回车等的格式字符去掉呢?有如下的办法
1.去掉回车的字符格式:
REPLACE(filed_name,CHAR(13)+CHAR(10),SPACE(0))
其中的filed_name代表 数据库的字段名,使用时候替换即可,使用范例如下
update ieel00h set el_name1= REPLACE(el_name1,CHAR(13)+CHAR(10),SPACE(0)) where el_no like 'L%'
2.去空格
可以通过 rtrim 去除右边空格, ltrim去除左边空格 。使用范例如下:
update ieel00h set el_name1=rtrim(el_name1) where el_no like 'L%'
update ieel00h set el_name1=Ltrim(el_name1) where el_no like 'L%'
但是,当存放的数据字符串中间有太多的空格(甚至具体多少空格,是全角的还是半角输入法下的空格也不清楚),又应该如何处理呢?
一个比较保守的方法,一定凑效:
先通过SQL查询这个字段出来,
使用SQL语句去除、删除数据库中的空格、回车字符的方法

然后直接复制这个字段其中的内容,贴到空白处,
使用SQL语句去除、删除数据库中的空格、回车字符的方法
使用SQL语句去除、删除数据库中的空格、回车字符的方法

选择其中的空格内容进行复制,
使用SQL语句去除、删除数据库中的空格、回车字符的方法
再使用 replace 函數處理,如下:

update ieel00h set el_name1=REPLACE(el_name1,' ',' ') where el_no like 'A0271001%'
使用SQL语句去除、删除数据库中的空格、回车字符的方法
再査,已經只有一個空格了。
使用SQL语句去除、删除数据库中的空格、回车字符的方法

我的更多文章

下载客户端阅读体验更佳

APP专享