SQL查询字符串中的回车并最终删除回车
我在一个表中有一些数据,在我不想要的地方有一些回车。我正在尝试编写一个查询,以获取包含回车返回的所有字符串。
我试过这个
select * from Parameters
where Name LIKE '%"\n" %'也是
select * from Parameters
where Name LIKE '\r'‘
两者都是有效的SQL,但不返回我正在寻找的内容。我需要使用类似的命令还是不同的命令?如何将回车返回到查询中?
回程也不一定在线路的末尾(可能在中间)。
发布于 2009-08-26 20:18:24
这会很慢,但如果是一次的话,试试.
select * from parameters where name like '%'+char(13)+'%' or name like '%'+char(10)+'%'请注意,ANSI SQL字符串连接运算符是“颇具弹性的”,因此可能需要:
select * from parameters where name like '%' || char(13) || '%' or name like '%' || char(10) || '%'发布于 2012-09-21 13:41:57
主要问题是去除CR/LF。使用替换和char函数对我有用:
Select replace(replace(Name,char(10),''),char(13),'')对于Postgres或Oracle SQL,请改用CHR函数:
replace(replace(Name,CHR(10),''),CHR(13),'')发布于 2009-08-26 20:27:18
在Server中,我将使用:
WHERE CHARINDEX(CHAR(13), name) <> 0 OR CHARINDEX(CHAR(10), name) <> 0这将搜索回车返回的和行提要。
如果您也想搜索选项卡,只需添加:
OR CHARINDEX(CHAR(9), name) <> 0https://stackoverflow.com/questions/1337196
复制相似问题