27,580
社区成员
发帖
与我相关
我的任务
分享
/* 测试数据
WITH table1(times,line,tot)AS(
SELECT 20160101,1,11 UNION ALL
SELECT 20160101,2,11 UNION ALL
SELECT 20160101,3,11 UNION ALL
SELECT 20160102,1,22 UNION ALL
SELECT 20160102,2,22 UNION ALL
SELECT 20160102,3,22 UNION ALL
SELECT 20160103,1,33 UNION ALL
SELECT 20160103,2,33 UNION ALL
SELECT 20160103,3,33 UNION ALL
SELECT 20160104,1,44 UNION ALL
SELECT 20160104,2,44 UNION ALL
SELECT 20160104,3,44 UNION ALL
SELECT 20160105,1,55 UNION ALL
SELECT 20160105,2,55 UNION ALL
SELECT 20160105,3,55
)*/
SELECT *
FROM (SELECT times-20160100 rn,
line,
tot
FROM table1
) t
PIVOT (MAX(tot)
FOR rn IN ([1],[2],[3],[4],[5])
) p
line 1 2 3 4 5
----------- ----------- ----------- ----------- ----------- -----------
1 11 22 33 44 55
2 11 22 33 44 55
3 11 22 33 44 55