数据库 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;
我有一个 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;