select
品类
,系列
,激活年份
,count (1) as total
,sum(设备月活)
,激活年月
From table
where pt_d =’20220317‘
group by 品类,系列,激活年份,激活年月
-- 加了一个激活年月的字段
因为分组的细粒度更明显。
查询出的结果更多了,所以count的值也就不一样了。
如:
100人分5组,平均每组20人
如果分组更细,100人分成10组,平均每组10人。
整个select跑出来的结果粒度更细,数量增多是正常的。但是select里面的count(1)是汇总from 后的table 的,为啥加字段前后值不一致呢,求解
理论上,你两个sql中的count(1)字段,所有行求和后,结果是一样的,
也就是说,对于一组 "品类,系列,激活年份" 按照 "激活年月",又拆成了多组数据,所以前一个count(1)里的数据又分到了多个count(1)里去了