[转]SqlServer行列倒置示例
时间:2010-12-10 来源:Dr.Wang
一.使用PIVOT进行行列倒置
示例数据库及测试数据
表RoleCellConvertDemo中的数据如下:
利用pivot将每个季度的利润转换成横向显示:
select id 编号,[name] 姓名,[1] 第一季度,[2] 第二季度,[3] 第三季度,[4] 第四季度
from RowCellConvertDemo
pivot
(
sum(profile) for quarter in([1],[2],[3],[4])
)as pvt
from RowCellConvertDemo
pivot
(
sum(profile) for quarter in([1],[2],[3],[4])
)as pvt
结果:
二.使用unpivot进行反向操作
示例数据库及测试数据
CellRowConvertDemo数据:
利用unpivot进行反向操作
select id,[name],quarter,profile
from CellRowConvertDemo
unpivot
(
profile for quarter in([Q1],[Q2],[Q3],[Q4])
)as unpvt
from CellRowConvertDemo
unpivot
(
profile for quarter in([Q1],[Q2],[Q3],[Q4])
)as unpvt
结果:
相关阅读 更多 +