SQL列中含有换行符的查找和替换方法

最近在获取数据时,发现程序读取的字段中含有\r\n字符,检查数据库表中的数据,发现是varchar字符串中包含了换行符。导入数据导致了这一情况出现。

回车换行

不同系统的行结尾符号并不同,如下:

  • linux/unix下的行结尾符号是\n
  • windows中的行结尾符号是\r\n
  • Mac系统下的行结尾符号是\r

查找换行符

select * from table where 
collum like '%'+CHAR(10) + '%'    --linux下的换行符
or collum like '%'+CHAR(13)+CHAR(10) + '%'  --windows下的换行符
or collum like '%'+CHAR(13)+ '%'  -- mac下的换行符

替换换行符

--windows下的替换操作
update table 
set column= REPLACE(column, CHAR(13) + CHAR(10), '') 
where collum like '%'+CHAR(13)+CHAR(10) + '%' 

  

posted @ 2017-12-22 14:50  阿子  阅读(12821)  评论(0编辑  收藏  举报