我有一栏供评论,我需要在一份报告中显示。 这里发生了一些时间,用户使用多个进入评论框。我无法访问我只需要在SQL中管理这个东西的代码部分。
所以我删除了不需要的
1 /r/n
2 /n/n
使用
REPLACE(REPLACE(Desc, CHAR(13)+CHAR(10), CHAR(10)),CHAR(10)+CHAR(10), CHAR(10)) as Desc,
现在我要从字符串的开头或结尾删除任何\r
或\n
答案 0 :(得分:3)
顺便提一下你的问题:(从特定的字符串中删除char(10)或char(13))
注意:您应该通过将结果集输出切换为结果到文本(Ctrl + T)来查看输出结果。
文字结果
结果到网格
答案 1 :(得分:1)
使用TRIM检查here
示例:UPDATE tablename SET descriptions = TRIM(TRAILING "<br>" FROM descriptions)
如果你想替换换行符,请使用下面的内容
SELECT REPLACE(REPLACE(@str, CHAR(13), ''), CHAR(10), '')
或
DECLARE @testString varchar(255)
set @testString = 'MY STRING '
/*Select the string and try to copy and paste into notepad and tab is still there*/
SELECT testString = @testString
/*Ok, it seems easy, let's try to trim this. Huh, it doesn't work, the same result here.*/
SELECT testStringTrim = RTRIM(@testString)
/*Let's try to get the size*/
SELECT LenOfTestString = LEN(@testString)
/*This supposed to give us string together with blank space, but not for tab though*/
SELECT DataLengthOfString= DATALENGTH(@testString)
SELECT ASCIIOfTab = ASCII(' ')
SELECT CHAR(9)
/*I always use this like a final solution*/
SET @testString = REPLACE(REPLACE(REPLACE(@testString, CHAR(9), ''), CHAR(10), ''), CHAR(13), '') SELECT @testString
/*
CHAR(9) - Tab
CHAR(10) - New Line
CHAR(13) - Carriage Return
*/
答案 2 :(得分:0)