You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

基于双条件分组的MySQL查询:按部门与可用状态统计学生数

按部门与可用状态统计学生数量的MySQL查询方案

刚好处理过类似的统计需求,给你一个能完美适配后续新增部门场景的MySQL查询方案,直接上代码:

SELECT 
    department,
    is_available,
    COUNT(*) AS student_count
FROM 
    students
GROUP BY 
    department, is_available
ORDER BY 
    department, is_available;

关键细节解释:

  • 双重分组逻辑:GROUP BY department, is_available 会同时按部门和可用状态进行分组统计,不管后续新增多少部门,新部门的数据都会被自动纳入统计,完全不用修改查询语句
  • 统计方式:用COUNT(*)统计每个分组下的学生总数,如果你的表有主键(比如student_id),用COUNT(student_id)会更严谨,避免NULL值影响统计结果
  • 结果排序:加上ORDER BY是为了让输出结果按部门和状态排序,看起来更规整,这个可以根据需求选择是否保留

举个实际例子:

假设你的students表有以下数据:

departmentis_available
计算机学院1
计算机学院1
文学院0
文学院1
外国语学院1

执行上面的查询后,会得到这样的结果:

departmentis_availablestudent_count
计算机学院12
文学院01
文学院11
外国语学院11

如果后续新增了"法学院"这类新部门,只要表中出现该部门的学生数据,查询就会自动统计法学院各状态的学生数量,完全不用调整语句~

内容的提问来源于stack exchange,提问作者usr021986

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 07:30:54