SQL Server 2008 R2:动态分配别名



我有以下字符串使其符合预期。

给定字符串:

DECLARE @String VARCHAR(MAX) = '[ColumnA],[ColumnB],[ColumnC]'
                              /*Will be any numbers of columns*/
预期字符串

:

SUM([ColumnA]) AS [ColumnA],SUM([ColumnB]) AS [ColumnA],SUM([ColumnC]) AS [ColumnA]
<标题>我的尝试:
SELECT 'SUM('+ REPLACE(@String,',','),SUM(') + ')'

我只能得到:

SUM([ColumnA]),SUM([ColumnB]),SUM([ColumnC])

无法在每个求和前分配别名

我使用了一个拆分函数和FOR XML

    SELECT STUFF(
                   (select ', SUM('+sit.items +') AS '+sit.items
                    from dbo.uf_SplitIntoTableStr('[column1],[column2]',',') sit
                    for xml path('')
                 ),1,1,'')

最新更新