数据库 ORACLE 查询

DB ORACLE QUERY

我有一个 table 用于存储详细信息

ID     NAME
1       A
2       A
1       A

我需要这样的输出

ID     Name   Count
1,2     A      3

请帮助获得类似 oracle select 查询中的输出

在 Oracle 中,您可以使用 listagg(),但它没有 distinct 选项。所以,使用子查询和两级聚合:

select listagg(id, ',') within group (order by id) as id, name, sum(cnt)
from (select id, name, count(*) as cnt
      from t
      group by id, name
     ) x
group by name;