日常在处理数据数据的时候,经常都有用户在操作一些系统时,把数据直接从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查询这个字段出来,
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)
update ieel00h set el_name1=Ltrim(el_name1)
但是,当存放的数据字符串中间有太多的空格(甚至具体多少空格,是全角的还是半角输入法下的空格也不清楚),又应该如何处理呢?
一个比较保守的方法,一定凑效:
先通过SQL查询这个字段出来,
