建成绩表gradeinfo和学生表student,成绩表中存有学生表的id:
create table GRADEINFO ( SID VARCHAR2(2), SUBJECT VARCHAR2(20), GRADE VARCHAR2(20) )
create table STUDENT ( ID VARCHAR2(2), NAME VARCHAR2(20) )
要查询出每一个学生对应的每一门功课的分数是多少。
想要的效果如下:
查询SQL:
select a.name,sum(decode(b.subject,'语文', b.grade)) "语文", sum(decode(b.subject,'数学', b.grade)) "数学", sum(decode(b.subject,'英语', b.grade)) "英语" from student a,gradeinfo b where b.sid=a.id group by a.name