(超紧急!)高手请进!求一个高难的sql语句!(100分送上)
表1:(学生)
stno stname
0001 姓名1
0002 姓名2
0003 姓名3
.... ....
表2:(成绩)
stno sub year xueqi type chengji
0001 数学 2004 第一学期 平时 1
0001 数学 2004 第一学期 期中 2
0001 数学 2004 第一学期 期末 3
0001 数学 2005 第二学期 期中 4
0001 语文 2004 第一学期 平时 5
0001 语文 2004 第一学期 期中 6
0001 语文 2004 第一学期 期末 7
0001 语文 2005 第二学期 期中 8
0002 数学 2004 第一学期 平时 9
0002 数学 2004 第一学期 期中 10
0002 数学 2004 第一学期 期末 11
0002 数学 2005 第二学期 期中 12
0002 语文 2004 第一学期 平时 13
0002 语文 2004 第一学期 期中 14
0002 语文 2004 第一学期 期末 15
0002 语文 2005 第二学期 期中 16
0003 数学 2004 第一学期 平时 17
0003 数学 2004 第一学期 期中 18
0003 数学 2004 第一学期 期末 19
0003 数学 2005 第二学期 期中 20
0003 语文 2004 第一学期 平时 21
0003 语文 2004 第一学期 期中 22
0003 语文 2004 第一学期 期末 23
0003 语文 2005 第二学期 期中 24
.... .... .... .... .... ....
问题:
写一个sql语句得到2004年第一学期的成绩并显示为如下的一个结果:
stno stname kemu1type1 kemu1type2 kemu1type3 kemu2type1 kemu2type2 kemu2type3 ...
0001 姓名一 1 2 3 5 6 7 ...
0002 姓名二 9 10 11 13 14 15 ...
0003 姓名三 17 18 19 21 22 23 ...
... ... ... ... ... ... ... ... ...
学号 姓名 数学平时 数学期中 数学期末 语文平时 语文期中 语文期末 其他科目...
注意:
1、学生可能没有考试,而导致成绩表里没有记录,此时成绩相应为0。
2、科目数量不一定(sub字段,不只数学,语文,而且事先不知道有多少科),但考试类型一定(type字段,只有平时、期中、期末三种类型)。
3、其实现实的问题比这个还要严重一点,因为还有总和,比例的问题,不过如果能够得到我问的答案,我已经很满足了,其他的我自己可以想想办法。
谢谢!本菜鸟的sql语句购差劲的,哎~~~~~~~~~~~!
100分一定送上,如果觉得不够,可以再另贴给!我还有1000多分!分我无所谓了,就要答案。
谢谢!十二万分的感谢!而且问题非常紧急!