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

MySQL中统计去重后IDNumber总数的实现问题咨询

解决统计不重复IDNumber总数的问题

你现在遇到的问题是因为GROUP BY IDNumber会把相同ID的记录分组,然后count(*)统计的是每个分组里的记录数,所以得到的是每个ID出现的次数(2、2、1),而不是去重后的ID总数。

要实现你想要的“重复ID仅计1次”的统计需求,只需要在COUNT里加上DISTINCT关键字就可以了——它会先对IDNumber字段去重,再统计唯一值的数量。

正确的查询语句如下:

SELECT COUNT(DISTINCT IDNumber) AS Total FROM esd_user;

执行这条语句后,会直接返回3,也就是你期望的不重复ID总数。

如果想要输出和你示例里一样的“Total is '3'”格式,不同数据库的字符串拼接语法略有不同,以MySQL为例,可以这样写:

SELECT CONCAT('Total is ', COUNT(DISTINCT IDNumber)) AS Result FROM esd_user;

这样查询结果就会直接显示为Total is 3。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.20 12:02:49