假设表名: student(name char(10),sub char(10),point int)
其中SUB 可以为'语','数','外'.
首先,可以设一个单位矩阵表
trans(sub char(10),s1 int ,s2 int ,s3 int )
其内容为 '语',1,0,0
'数',0,1,0
'外',0,0,1则可以
select student.name,
sum(trans.s1*student.point),
sum(trans.s2*student.point),
sum(trans.s3 * student.point)
from student ,trans
where student.sub = trans.sub
group by student.name
其中SUB 可以为'语','数','外'.
首先,可以设一个单位矩阵表
trans(sub char(10),s1 int ,s2 int ,s3 int )
其内容为 '语',1,0,0
'数',0,1,0
'外',0,0,1则可以
select student.name,
sum(trans.s1*student.point),
sum(trans.s2*student.point),
sum(trans.s3 * student.point)
from student ,trans
where student.sub = trans.sub
group by student.name
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货