我有一个包含2列name
和balance
的表。它包含代表余额的交易的多个条目。例如,Clifford可能出现三次,其中两个条目为正,而1个条目为负。我需要一个查询,该查询将为表中的所有用户返回具有三列name
,negative_total
和positive_total
的不同用户。
答案 0 :(得分:0)
只需使用条件聚合:
selet name,
sum(balance) filter (where balance < 0) as negative_total,
sum(balance) filter (where balance > 0) as positive_total
from t
group by name;