【发布时间】:2013-03-14 12:12:26
【问题描述】:
我试图执行以下语句来转义单引号(即使用两个单引号):
declare @year varchar(max)
set @year = '111,11';
exec ('SELECT * FROM SplitValues(' + @year + ','','')');
我什至尝试使用char(39) 代替引号:
declare @year varchar(max)
set @year = '111,11';
exec ('SELECT * FROM SplitValues(' + @year + ',' + char(39) + ',' + char(39) + ')');
但这没有帮助。这是我在这个网站上找到的仅有的两个解决方案。有什么帮助吗?
这是解决所有问题的简化查询:
declare @year varchar(max)
set @year = '111,11';
SELECT * FROM SplitValues(@year , ',')
我想实现这一点,但使用动态查询。
【问题讨论】:
-
这里为什么需要使用 EXEC?
-
这是因为我现在正在处理的查询非常复杂,无法在此处发布。这只是我想要做的一瞥。
标签: sql-server