繁体   English   中英

postgres:sum if count distinct id = 1

[英]postgres: sum if count distinct id = 1

如何对具有不同 ID 的总计求和并避免将总计加起来两次?

桌子:

id | total | quantity |
-----------------------
1  | 50    | 1        |
1  | 50    | 2        |

预期结果:

 sum of total | sum of quantity |
---------------------------------
 50           | 3               |

一种方法是:

select id, sum(distinct total), sum(quantity)
from t
group by id;

也就是说,当您需要sum(distinct)时,您的数据有问题。 我从未在“真实”代码中使用过它; 仅用于这样的演示。 通常这意味着数据是查询的结果,聚合应该有点不同。 或者数据中缺少另一个id (与添加的值分开)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM