如何根据两个属性按组派生的计数更新表?
如:
有a、b、c列的表
我需要根据计数更新c,这个计数有共同点(a,b)

最佳答案

PostgreSQL中的更新有一个FROM extension您可以使用:

update  YourTable as yt1
set     c = case when aggr.cnt > 5 then 'Q' else 'Z' end
from    (
        select  a
        ,       b
        ,       count(*) as cnt
        from    YourTable
        group by
                a
        ,       b
        ) as aggr
where   aggr.a = yt1.a
        and aggr.b = yt1.b

09-07 09:21