Duplikate mit der Oracle LISTAGG-Funktion entfernen [duplizieren]

Mögliche Duplikate:
LISTAGG in oracle, um eindeutige Werte zurückzugeben

Ich verwende die Oracle LISTAGG-Funktion, möchte jedoch in meiner Liste der zurückgegebenen Namen eigentlich doppelte Einträge entfernen und nur bestimmte Werte zurückgeben.

Die Abfrage, die ich habe, sieht ungefähr so ​​aus:

select a.id,
       a.change_id,
       LISTAGG(b.name, ',') WITHIN GROUP (ORDER BY b.name) AS "Product Name", 
from   table_a a,
       table_b b
where  a.id = 1
and    b.change_id = c.change_id
group by a.id, a.change_id

Im Moment kehrt es zurück (nur ein Datensatz wird angezeigt):

1    1   NameA, NameA, NameB, NameC, NameD, Name D

Was ich zurückgeben möchte, ist:

1    1   NameA, NameB, NameC, Name D

Antworten auf die Frage(1)

Ihre Antwort auf die Frage