首页 > 解决方案 > PostgreSQL sum 没有按预期计算 sum

问题描述

select distinct userid, SUM(device)  
from table 
where userid != '' 
group by userid, device;

 userid  | sum 
---------+-----
 a       |  12
 b       |   1
 c       |  10
 c       |  78

为什么没有计算总和的重复用户标识。所有设备都有整数值

标签: postgresql

解决方案


因为您同时按 userid分组device。从. device_GROUP BY

您的查询应如下所示:

select userid, SUM (device)  
from table 
where userid != '' 
group by userid;

顺便说一句,我删除了,DISTINCT因为你已经在聚合了。


推荐阅读