Verwenden Sie GROUP BY und die Aggregatfunktion string_agg()
:
SELECT nummer
,string_agg(vorname, E'\n') AS vorname
,string_agg(name, E'\n') AS name
,cash
FROM mytable
GROUP BY nummer, cash
ORDER BY nummer, cash;
Ich habe cash hinzugefügt zu GROUP BY um auf den ursprünglichen Wert zu kommen und für den Fall abzusichern, dass es für die gleiche nummer anders wäre .
Zu Ihrem Kommentar:
SELECT nummer
,string_agg(vorname, E'\n') AS vorname
,string_agg(name, E'\n') AS name
,cash
FROM (
SELECT DISTINCT
nummer, vorname, name, cash
FROM mytable
) AS m
GROUP BY nummer, cash
ORDER BY nummer, cash;