数据库SQL语句----统计分组查询以及case when用法实例详解

统计各班级人数

SELECT GRADE_ID,COUNT(ID) AS STUNUM FROM STUDENT GROUP BY GRADE_ID

统计各个班级人数,显示班级名称

SELECT A.GRADE_ID,B.NAMES,COUNT(A.ID) AS STUNUM FROM STUDENT A JOIN GRADE B ON A.GRADE_ID=B.ID GROUP BY A.GRADE_ID, B.NAMES//显示两个字段,group by两个字段

统计各个班级,各个科目的不及格人数(分数<60)

SELECT C.NAMES,COUNT(A.STUDENT_ID) AS STUNUM FROM SCORES A JOIN STUDENT B ON A.STUDENT_ID=B.ID JOIN GRADE C ON B.GRADE_ID=C.ID WHERE A.SCORE<60 GROUP BY C.NAMES//不断地join on,根据条件

统计所有班级男生人数,女生人数,显示列名:班级编号,男生人数,女生人数:

SELECT GRADE_ID,SUM(CASE SEX WHEN 1 THEN 1 ELSE 0 END) AS MALENUM,SUM(CASE SEX WHEN 2 THEN 1 ELSE 0 END) AS FEMALENUM FROM STUDENT GROUP BY GRADE_ID

统计所有班级的语文最高、平均成绩,显示班级、最高分、平均分

SELECT A.GRADE_ID,B.NAMES,MAX(C.SCORE),CAST(AVG(C.SCORE) AS DECIMAL(6,2)) FROM STUDENT A JOIN GRADE B ON A.GRADE_ID=B.ID JOIN SCORES C ON A.ID = C.STUDENT_ID WHERE C.SUBJECT_ID='YW'

GROUP BY A.GRADE_ID,B.NAMES

*//统计sql,查询sql

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值