行专列

DLARE @cols NVARCHAR(MAX);
DECLARE @sql NVARCHAR(MAX);

-- 获取要转换的动态字段值列表
SELECT @cols = STUFF((SELECT DISTINCT ',' + QUOTENAME(value) 
                      FROM your_table
                      FOR XML PATH('')), 1, 1, '');

-- 构建动态 SQL
@sql = 'SELECT *
         FROM 
         (
             SELECT id, value
             FROM your_table
         ) AS source_table
         PIVOT 
         (
             COUNT(1) FOR value IN (' + @cols + ')
         ) AS pivot_table';

-- 执行动态 SQL
EXECUTE(@sql);

 

posted @ 2025-11-05 13:31  麦麦提敏  阅读(5)  评论(0)    收藏  举报