惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Blog — PlanetScale
Blog — PlanetScale
N
Netflix TechBlog - Medium
博客园 - 司徒正美
The GitHub Blog
The GitHub Blog
G
Google Developers Blog
Stack Overflow Blog
Stack Overflow Blog
博客园_首页
Google DeepMind News
Google DeepMind News
博客园 - 【当耐特】
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
Recent Announcements
Recent Announcements
aimingoo的专栏
aimingoo的专栏
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Y
Y Combinator Blog
B
Blog RSS Feed
人人都是产品经理
人人都是产品经理
MongoDB | Blog
MongoDB | Blog
量子位
博客园 - Franky
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
The Cloudflare Blog
有赞技术团队
有赞技术团队
Jina AI
Jina AI
GbyAI
GbyAI

博客园 - Bruce Xiao

select 语句的执行顺序 时间复杂度计算方法 活动图与流程图的区别 ASP.NET 应用程序生命周期概述 Tab标签 - Bruce Xiao - 博客园 过滤数据集DataTable方法 - Bruce Xiao - 博客园 Abstract 与 Vitrual 用法 在同一个DataSet中添加多个DataTable - Bruce Xiao - 博客园 C#文件读写常用类介绍[转] 获取当月的天数 谈SQL SERVER数据库中的索引 C#读取二进制字节流 Oracle字符函数 分组合并字符串 分页控件 .net控件开发系列 事件处理机制 三个接口两个方法 xml讀寫實例 - Bruce Xiao - 博客园 SQL2005 分頁存儲過程 对xml操作的主要方法[轉] - Bruce Xiao - 博客园
SQL2005 新功能:行列轉換
Bruce Xiao · 2007-06-18 · via 博客园 - Bruce Xiao

--Create the table and insert values as portrayed in the above example.
CREATE TABLE pvt (VendorID int, Emp1 int, Emp2 int,
Emp3 int, Emp4 int, Emp5 int)
GO
INSERT INTO pvt VALUES (1,4,3,5,4,4)
INSERT INTO pvt VALUES (2,4,1,5,5,5)
INSERT INTO pvt VALUES (3,4,3,5,4,4)
INSERT INTO pvt VALUES (4,4,2,5,5,4)
INSERT INTO pvt VALUES (5,5,1,5,5,5)
GO
VendorID    Employee                                                                                                                         Orders
----------- -------------------------------------------------------------------------------------------------------------------------------- -----------
1           Emp1                                                                                                                             4
1           Emp2                                                                                                                             3
1           Emp3                                                                                                                             5
1           Emp4                                                                                                                             4
1           Emp5                                                                                                                             4
2           Emp1                                                                                                                             4
2           Emp2                                                                                                                             1
2           Emp3                                                                                                                             5
2           Emp4                                                                                                                             5
2           Emp5                                                                                                                             5
3           Emp1                                                                                                                             4
3           Emp2                                                                                                                             3
3           Emp3                                                                                                                             5
3           Emp4                                                                                                                             4
3           Emp5                                                                                                                             4
4           Emp1                                                                                                                             4
4           Emp2                                                                                                                             2
4           Emp3                                                                                                                             5
4           Emp4                                                                                                                             5
4           Emp5                                                                                                                             4
5           Emp1                                                                                                                             5
5           Emp2                                                                                                                             1
5           Emp3                                                                                                                             5
5           Emp4                                                                                                                             5
5           Emp5                                                                                                                             5

(25 row(s) affected)

SELECT VendorID, Employee, Orders
 into pvt_cc FROM
   (SELECT VendorID, Emp1, Emp2, Emp3, Emp4, Emp5
   FROM pvt) p
UNPIVOT
   (Orders FOR Employee IN
      (Emp1, Emp2, Emp3, Emp4, Emp5)
)AS unpvt
GO
select * from pvt_cc
pivot (
sum(Orders)
for Employee in (Emp1, Emp2, Emp3, Emp4, Emp5)
) as pivt

VendorID    Emp1        Emp2        Emp3        Emp4        Emp5
----------- ----------- ----------- ----------- ----------- -----------
1           4           3           5           4           4
2           4           1           5           5           5
3           4           3           5           4           4
4           4           2           5           5           4
5           5           1           5           5           5

(5 row(s) affected)