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

如何在单个MySQL查询中实现多COUNT统计?

合并MySQL两个统计查询为单结果集

你可以用条件聚合实现这个需求,仅需一次分组就能同时得到两个统计结果,避免重复查询或表关联操作。合并后的SQL语句如下:

SELECT 
    user_id,
    COUNT(*) AS count1,
    COUNT(CASE WHEN concerned = 1 THEN 1 END) AS count2
FROM users_vuln 
WHERE vuln_id IN (48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62)
GROUP BY user_id;

逻辑说明

  • COUNT(*):统计所有符合vuln_id条件的记录数,对应你第一个查询的结果。
  • COUNT(CASE WHEN concerned = 1 THEN 1 END):仅统计concerned = 1的记录数——当条件不满足时CASE返回NULL,COUNT函数会自动忽略NULL值,正好匹配第二个查询的统计逻辑。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.17 16:20:46