gigi300885
Goto Top

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

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

SaschaRD
SaschaRD 23.02.2016 aktualisiert um 12:17:41 Uhr
Goto Top
Hallo Christian,

'-'

Gruß, Sascha
ukulele-7
Lösung ukulele-7 23.02.2016, aktualisiert am 25.02.2016 um 13:51:01 Uhr
Goto Top
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.
gigi300885
gigi300885 25.02.2016 um 13:51:21 Uhr
Goto Top
Super vielen Dank,

hat geholfen. face-smile