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

MySQL如何使用COUNT配合CASE WHEN将非指定部门归为Other统计人数

完全可以使用CASE WHEN实现该需求,这也是这类自定义分组归并场景的常规实现方案。

以下是参考示例,假设你的员工表名为employee,部门字段名为dept_name,需要单独统计的指定部门为「行政部」,SQL写法如下:

SELECT
  CASE
    WHEN dept_name = '行政部' THEN dept_name
    ELSE 'Other'
  END AS dept_category,
  COUNT(*) AS `COUNT`
FROM employee
GROUP BY
  CASE
    WHEN dept_name = '行政部' THEN dept_name
    ELSE 'Other'
  END;

注意事项

  • 如果你使用的数据库支持GROUP BY引用SELECT别名(比如MySQL),可以简化GROUP BY部分的写法为GROUP BY dept_category,减少冗余代码
  • COUNT属于SQL保留关键字,作为自定义列名使用时需要按你所用数据库的规则转义:MySQL用反引号`包裹,SQL Server用方括号[]包裹,Oracle用双引号"包裹即可

如果你的需求是把所有统计结果的数值合并到单列展示,可以调整写法为分组后用对应数据库的字符串拼接函数(比如MySQL的GROUP_CONCAT)把部门分类和统计值拼接后输出到单列。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 06:24:03