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

MySQL查询数据库中所有标本总数的技术咨询

统计所有标本总数的正确SQL语句

要得到所有用户的标本总数量(也就是5),直接用COUNT(*)统计表中所有行数即可,因为每一行对应一个标本:

SELECT COUNT(*) AS total_specimens FROM Table1;

你的原语句问题在哪?

你之前写的Select count(distinct userId) from Table1 group by userId存在两个问题:

  • 加了GROUP BY userId,结果会按用户分组返回每个用户的单独数据,而非整体总数;
  • COUNT(DISTINCT userId)是统计每个分组内不同用户ID的数量,但你已经按userId分组,每个分组里只有同一个用户ID,所以返回的结果都是1,根本不是标本数量。

如果既要查看每个用户的标本数,又要统计总数量,可以用以下语句:

-- 查询每个用户的标本数
SELECT userId, COUNT(*) AS user_specimens FROM Table1 GROUP BY userId;

-- 基于用户标本数统计总数量
SELECT SUM(user_specimens) AS total_specimens FROM (
    SELECT COUNT(*) AS user_specimens FROM Table1 GROUP BY userId
) AS user_counts;

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.09 01:05:26