XS表:
KC:
XX:
1、Group by使用
select XS.学号,XS.姓名,XS.所在系,XX.课程号,KC.课程名 from XS join XX on XS.学号=XX.学号 join
KC on KC.课程号=XX.课程号
group by XS.学号,XS.姓名,XS.所在系,XX.课程号,KC.课程名
order by XX.课程号
注意:
1、在group By子句中出现的字段,必须出现在Select后的列名中,并且列名中除了聚合函数,不能有其他字段。
2、group by与order by连用,order by 子句中可包含聚合函数
3、group by关键字后可以使用多个字段名作为分组字段,这样,系统将根据这些字段的先后顺序对结果集进行更加详细地分组
不能对数据类型为ntext、text、image或bit的字段使 用 group by子句。
---k.成绩如果是varchar(50)类型的需要转成int
--select k.课程号,AVG(convert(int,k.成绩))as 平均成绩,COUNT(k.学号)as 人数 from XX k group by k.课程号;
select k.课程号,AVG(k.成绩)as 平均成绩,COUNT(k.学号)as 人数 from XX k group by k.课程号
查询结果:
本文介绍 SQL 中 Group By 子句的使用方法,包括基本语法、注意事项及与 Order By 子句的配合使用。通过实例演示如何进行多字段分组查询,并展示了如何计算每门课程的平均成绩和选课人数。
4万+

被折叠的 条评论
为什么被折叠?



