我在一些网站上走了一圈,发现解决 Dynamic Pivot 的(唯一)方法是将查询存储为字符串,然后执行该字符串查询。但是,就我而言,我似乎无法应用此解决方案,因为列数超过了一个字符串的容量。
declare @columns nvarchar(max)
select @columns = COALESCE(@columns + ', ','') + QUOTENAME(name)
from table1
虽然我声明了@columns 的最大容量,但它仍然没有足够的空间并导致错误。有什么办法可以解决这种情况,或者如何在不将查询存储为字符串的情况下构建动态数据透视?