SQL有关group by的疑惑

img


如果想依据SNo(学号)分组并输出每一小组对应的CNo(课程号)和Score(成绩),要怎么办?

select SNo,CNo,sum(Score) Score from test.SC group by SNo,CNo;
或者
select * from test.SC order by SNo,CNo;

这种需求不适合用分组

想要分组显示,要么用聚合函数,要么就加上所有列,亲测成功执行

SELECT * FROM SC GROUP BY SNo,CNo,Score



select SNo,CNo,sum(Score) Score from test.SC group by SNo,CNo;