删除重复行后同时计算 COUNT 和 SUM

Luf*_*nio 7 postgresql

我正在使用 PostgreSQL,我无法弄清楚对两个不同列进行 COUNT 和 SUM 的查询。基本上我正在寻找类似的东西SUM(hits DISTINCT record_id)

桌子:

status      record_id      hits     
     0            123         1
     0            123         1
     0            124         1
     0            125         1
     0            126         0
     1            123         0
     1            124         0
     1            125         1
     1            125         1
Run Code Online (Sandbox Code Playgroud)

想要的结果:

status   unique_records_count  hits_sum
     0                      4         3
     1                      3         1
Run Code Online (Sandbox Code Playgroud)

做一个

SELECT status, COUNT(DISTINCT record_id), SUM(hits)
FROM table
GROUP BY status
Run Code Online (Sandbox Code Playgroud)

返回

status   unique_records_count  hits_sum
     0                      4         4
     1                      3         2
Run Code Online (Sandbox Code Playgroud)

JP *_*han 5

Select A.status,count (A.record_id),sum(A.hits)
from 
(Select distinct status,record_id,hits from YourTable) A
group by A.status
Run Code Online (Sandbox Code Playgroud)