Como usar a função LISTAGG da Oracle com um filtro exclusivo? [duplicado
Esta pergunta já tem uma resposta aqui:
LISTAGG no Oracle para retornar valores distintos 3 respostasTenho uma tabela como esta:
group_id name
-------- ----
1 David
1 John
1 Alan
1 David
2 Julie
2 Charles
E eu quero o seguinte resultado:
group_id names
-------- -----
1 'Alan, David, John'
2 'Charles, Julie'
Eu posso usar a seguinte consulta:
select group_id,
listagg(name, ',') within group (order by name) as names
from demotable
group by group_id
Para obter isso (resultado muito semelhante):
group_id names
-------- -----
1 'Alan, David, David, John'
2 'Charles, Julie'
Alguma idéia de como posso filtrar os nomes por exclusividade noLISTAGG
ligar