【发布时间】:2016-08-07 09:03:32
【问题描述】:
我想获取这个字符串以在我的其他查询中使用
@cols = 'ISNULL(myColumnName_value_1,0) + ISNULL(myColumnName_value_2,0) + ... + ISNULL(myColumnName_value_N,0)'
和 myColumnName_value_1 ORmyColumnName_value_2 ,......可以是任何东西。
我的查询是:
DECLARE @cols AS NVARCHAR(MAX)
SET @cols = STUFF((SELECT distinct ' + ISNULL(' + (c.myColumnName) +',0)'
FROM myTableName c
FOR XML PATH(''), TYPE
).value('.', 'NVARCHAR(MAX)')
,1,1,'')
print @cols
但我无法得到我想要的。
我想要的打印输出:
ISNULL(myColumnName_value_1,0) +
ISNULL(myColumnName_value_2,0) + ... +
ISNULL(myColumnName_value_N,0)
还有...,因为我不知道名称或列数。
【问题讨论】:
-
正如我上面所说,我想要这个输出:ISNULL(myColumnName_value_1,0) + ISNULL(myColumnName_value_2,0) + ... + ISNULL(myColumnName_value_N,0)
标签: sql sql-server pivot common-table-expression