DB ORACLE QUERY

时间:2018-03-14 11:02:22

标签: sql oracle string-aggregation

我有一个存储细节的表

ID     NAME
1       A
2       A
1       A

我需要像

这样的输出
ID     Name   Count
1,2     A      3

请帮助获取oracle select query

中的输出

1 个答案:

答案 0 :(得分:2)

在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;