MS SQL Server 2012 Texte aus mehreren Zeilen in einer Zeile gruppieren verketten
Hallo zusammen,
Habe nach einer Abfrage folgenden Output: (z.b. Select sendung,niederlassung from sendung group by sendung,niederlassung order by datum)
etc.
Ich möchte nun diese Ausgabe so umwandeln, dass die Niederlassungen in einer Spalte verkettet ist.
SOLL:
Ist dies über die Pivotfunktion möglich? Wenn ja wie genau? Mit einem Cursor und einer Temporären Zwischentabelle denke ich würde ich es hinbekommen. Dies ist aber bei den Massen an Daten die der Cursor dann durchzurattern hätte alles andere als performant.
Danke schon mal für eure Hilfe.
Viele Grüße
Christian
Habe nach einer Abfrage folgenden Output: (z.b. Select sendung,niederlassung from sendung group by sendung,niederlassung order by datum)
Ich möchte nun diese Ausgabe so umwandeln, dass die Niederlassungen in einer Spalte verkettet ist.
SOLL:
Ist dies über die Pivotfunktion möglich? Wenn ja wie genau? Mit einem Cursor und einer Temporären Zwischentabelle denke ich würde ich es hinbekommen. Dies ist aber bei den Massen an Daten die der Cursor dann durchzurattern hätte alles andere als performant.
Danke schon mal für eure Hilfe.
Viele Grüße
Christian
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 297081
Url: https://administrator.de/forum/ms-sql-server-2012-texte-aus-mehreren-zeilen-in-einer-zeile-gruppieren-verketten-297081.html
Ausgedruckt am: 22.12.2024 um 18:12 Uhr
3 Kommentare
Neuester Kommentar
SELECT t.sendung AS [Sendung],
stuff(( SELECT '-' + niederlassung
FROM sendung
WHERE sendung = t.sendung
ORDER BY datum
FOR XML PATH('')
),1,1,'') AS [Route]
FROM ( SELECT sendung
FROM sendung
GROUP BY sendung ) t
Tabellenname = Spaltenname ist hier etwas verwirrend, ich hoffe das passt so. Wenn du mehrere Einträge pro Niederlassung hast musst du eventuell noch etwas feilen.