供應商 | 名稱 | 規格 | 數量 | 重量
A | 名1 | 規1 | 1 | 2
B | 名2 | 規2 | 1 | 3
B | 名1 | 規1 | 1 | 2
C | 名3 | 規3 | 1 | 4
名稱 | 規格 | A數量 | A重量 | B數量 | B重量 | C數量 | C重量
名1 | 規1 | 1 | 2 | 1 | 2 | 0 | 0
名2 | 規2 | 0 | 0 | 1 | 3 | 0 | 0
名3 | 規3 | 0 | 0 | 0 | 0 | 1 | 4
SELECT 名稱, 規格,
SUM(CASE 供應商 WHEN 'A' THEN 數量 ELSE 0 END) AS A數量,
SUM(CASE 供應商 WHEN 'A' THEN 重量 ELSE 0 END) AS A重量,
SUM(CASE 供應商 WHEN 'B' THEN 數量 ELSE 0 END) AS B數量,
SUM(CASE 供應商 WHEN 'B' THEN 重量 ELSE 0 END) AS B重量,
SUM(CASE 供應商 WHEN 'C' THEN 數量 ELSE 0 END) AS C數量,
SUM(CASE 供應商 WHEN 'C' THEN 重量 ELSE 0 END) AS C重量
FROM 表
GROUP BY 名稱, 規格;
需先查詢所有供應商,拼接 CASE 字串,再 EXEC 執行;或使用報表工具/BI 完成樞紐。