在Oracle中行列互换可以通过decode来实现,SqlServer中我们也有相应的措施;case
下面是一个列子
 1 --建表
 2 Create   table   test   ( [name] char(10), km char(10)   , cj int )
 3 Go
 4 --初始化数据
 5 insert   into   test   values('张三','语文',80)
 6 insert   into   test   values('张三','数学',86)
 7 insert   into   test   values('张三','英语',75)
 8 insert   into   test   values('李四','语文',78)
 9 insert   into   test   values('李四','数学',85)
10 insert   into   test   values('李四','英语',78)
11 Go
12 --行列互换
13 select name,sum(case km when '语文' then cj  endas 语文,
14 sum(case km when '数学' then cj  endas 数学,
15 sum(case km when '英语' then cj  endas 英语
16 from test
17 group by name


posted on 2007-09-03 18:26  kuning的程序博客  阅读(1384)  评论(1编辑  收藏  举报