t-sql 替换双引号

Posted

技术标签:

【中文标题】t-sql 替换双引号【英文标题】:t-sql replacing double quotes 【发布时间】:2010-11-18 06:46:31 【问题描述】:

我有一个像Replace(field,'\''','\"') 这样的 t-sql 语句,因为我有两个不同的结果 ''field1'' 和 "field2" 但是如果我认为这两个不同的结果相同并且想要将它们分组怎么办。我选择通过用第二种样式替换第一个双引号来对这两个进行分组,但尽管被替换,但它们不会被解释为相同类型的引号。

我在这里缺少什么??

已编辑:我正在尝试对文本相同但引号不同的数据进行分组,用户输入两个单引号“你好”和一个双引号“你好”,如果我有这两行我想显示他们作为一个“你好”,所以通过执行上面的语句我想我应该能够做到这一点,但即使没有斜杠它也不能正常工作。

【问题讨论】:

您能详细说明一下吗?我完全不知道你在问什么以及你的数据是什么样的...... 【参考方案1】:

看看这段代码:

DECLARE @X  varchar(20)
SET @X='''''Hello"'

PRINT @X
PRINT REPLACE(@X,'''''','"')
PRINT REPLACE(REPLACE(@X,'''''',''''),'"','''')

这是输出:

''Hello"
"Hello"
'Hello'

SQL Server 不会用斜杠转义引号,单引号用另一个单引号转义。这将打印一个 qoute:

print ''''

这将打印两个单引号:

print ''''''

【讨论】:

谢谢!我使用您的解决方案将双双引号替换为两个单引号,将双引号替换为单引号:replace(replace(left(itemf.[t_dsca],30) ,'""', ''''''),'"', '')

以上是关于t-sql 替换双引号的主要内容,如果未能解决你的问题,请参考以下文章

关于JS替换双引号

sed 替换 (替换掉双引号)

如何在 T-SQL 中的 XML 字符串中的属性中转义双引号?

PHP 替换html标签内的单引号,将单引号替换成双引号

shell中,如何替换双引号中内容为某个变量?

用 \' 或 \" 替换每个单引号/双引号