如何在postgresql中查找列中小于该特定值的总值?

时间:2017-12-01 00:22:34

标签: postgresql

我有一个看起来像这样的列

Quantity
20
40
10
25

我需要获得该列中小于该特定值的值的总数,如

Quantity    Value
20          1
40          3
10          0
25          2

1 个答案:

答案 0 :(得分:1)

在小于当前值的值上将表连接到自身:

select a.quantity, count(distinct b.id)
from mytable a
left join mytable b on b.quantity < a.quantity
group by a.quantity

选择count(distinct b.id)处理存在非唯一数量和最低值(没有要加入的行,因此连接将返回空值,count()将不计算)。< / p>