GROUP BY 分组统计与 COUNT、DISTINCT 用法

GROUP BY 分组统计与 COUNT、DISTINCT 用法

分组后可以对每一组的数据进行数量统计。

统计每组记录数

SELECT name, COUNT(*) 
FROM person 
GROUP BY name

分组后获取每组的最大时间与年龄统计

SELECT name, MAX(cjsj) cjsj, COUNT(age)
FROM person
GROUP BY name

执行结果示例:

namecjsj(无列名)
张飞2300-01-03 00:00:00.0003
张三丰2018-04-08 00:00:00.0001

使用 COUNT(DISTINCT) 去掉重复值统计

如果希望统计年龄不重复的个数,可以使用 COUNT(DISTINCT 字段名):

SELECT name, MAX(cjsj) cjsj, COUNT(DISTINCT age)
FROM person
GROUP BY name

这样可以排除同一分组内年龄相同导致的重复计数,只统计不重复的年龄数量。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注