首页 > 解决方案 > PostgreSQL - 如何在 Distinct On 时计数

问题描述

如何获取每个 user_id 的行数

select distinct on (user_id) *
from some_table

在这样的 SQL 中:

select user_id, count(*)
from some_table
group by user_id

标签: postgresql

解决方案


尝试这个:

SELECT DISTINCT ON (a.user_id)
       a.*
FROM
(
    SELECT  user_id
            , count(*) OVER(PARTITION BY user_id)
    FROM some_table
) a

推荐阅读