求一查询方法
表A数据:编号 地区 类型 时间 数量 9 湖南区 修旧物资 201209 56 9 湖南区 修旧物资 201209 73 9 湖南区 烟煤 201209 2 9 湖南区 药品 201209 65 9 湖南区 助磨剂 201209 60 9 湖南区 药品 201209 75 10 湖北区 PC32.5 201101 34 10 湖北区 PC32.5 201101 48 10 湖北区 PC32.5(资源综合利用) 201101 35 10 湖北区 PC32.5(资源综合利用) 201101 49 10 湖北区 PII42.5 201101 28
项目 江西 湖北 湖南大区 煤炭 33 21 32修旧物资 43 56 43 助磨剂 22 43 23PC32.5 32 12 43PII42 44 32 12其他煤 13 11
DECLARE @s VARCHAR(MAX)SELECT @s = ISNULL(@s + ',') + QUOTENAME(地区)FROM AGROUP BY 地区 EXEC('SELECT *FROM ( SELECT 类型 , 地区 , SUM(数量) AS 数量 FROM A GROUP BY 类型 , 地区 ) AS a PIVOT( MAX(数量) FOR 地区 IN ('+@s+') ) as pvt')