oracle的http://www.cnblogs.com/luluping/archive/2012/07/26/2610705.html
这就是竖表变横表,用case语法汇总,或者用PIVOT(sqlserver方法)
本人菜鸟一枚。以下是我想到的一种方法:
---行转列
create table tb(
name varchar(10),
subject varchar(10),
result int);
insert into tb values ('张三','语文',74);
insert into tb values ('张三','数学',83);
insert into tb values ('李四','语文',80);
insert into tb values ('李四','数学',86);
select * from tb;
-----输出格式如下----
姓名 语文 数学
张三 74 83
李四 80 86
select name,
sum(case when subject='语文' then result end )as 语文,
sum(case when subject='数学' then result end) as 数学
from tb
group by name
;