SQL Select ... Zeilenweise Ausgabe zusammenfassen

chgs2013

Aktiver Benutzer
Beiträge
37
Hallo,

ich benötige Hilfe bei einem SQL-Selectbefehl, die Ausgabe klappt nicht wie gewünscht.

Zu Beginn habe ich den Lagernamen so ausgegeben, das klappte:

DECLARE @Lagerverwaltung VARCHAR(1024)
SELECT @Lagerverwaltung = COALESCE(@Lagerverwaltung + '¶', '') + tlager.cName from tartikel
INNER JOIN
tArtikelLagerOrt ON tartikel.kArtikel = tArtikelLagerOrt.kArtikel INNER JOIN
tlager ON tArtikelLagerOrt.kLager = tlager.kLager INNER JOIN
tlagerort ON tArtikelLagerOrt.kLagerOrt = tlagerort.kLagerOrt
WHERE tartikel.cArtNr = 'XXXXX'
SELECT Lagerverwaltung = @Lagerverwaltung



In der zweiten Abfrage von Lagerort, habe ich das so erfolgreich getan:

DECLARE @Lagerverwaltung2 VARCHAR(1024)
SELECT @Lagerverwaltung2 = COALESCE(@Lagerverwaltung2 + '¶', '') + tlagerort.cName from tartikel
INNER JOIN
tArtikelLagerOrt ON tartikel.kArtikel = tArtikelLagerOrt.kArtikel INNER JOIN
tlager ON tArtikelLagerOrt.kLager = tlager.kLager INNER JOIN
tlagerort ON tArtikelLagerOrt.kLagerOrt = tlagerort.kLagerOrt
WHERE tartikel.cArtNr = 'XXXXX'
SELECT Lagerverwaltung = @Lagerverwaltung2




Nun habe ich aber in List&Label das Problem, dass die Daten natürlich Zeilenweise aneinander gehängt werden per Zeilenumbruch.
Sollte aber nun einmal der Lagerort fehlen, rutscht die leere Zeile nach oben und die Zuordnung stimmt nicht.


Daher habe ich dann versucht, Zeilenweise die Ausgaben zusammenzufassen, aber leider werden diese nur aneinander gereiht:

DECLARE @Lagerverwaltung VARCHAR(1024)
SELECT @Lagerverwaltung = COALESCE(@Lagerverwaltung + '¶', '') + tlager.cName from tartikel
INNER JOIN
tArtikelLagerOrt ON tartikel.kArtikel = tArtikelLagerOrt.kArtikel INNER JOIN
tlager ON tArtikelLagerOrt.kLager = tlager.kLager INNER JOIN
tlagerort ON tArtikelLagerOrt.kLagerOrt = tlagerort.kLagerOrt
WHERE tartikel.cArtNr = 'XXXXX'

DECLARE @Lagerverwaltung2 VARCHAR(1024)
SELECT @Lagerverwaltung2 = COALESCE(@Lagerverwaltung2 + '¶', '') + tlagerort.cName from tartikel
INNER JOIN
tArtikelLagerOrt ON tartikel.kArtikel = tArtikelLagerOrt.kArtikel INNER JOIN
tlager ON tArtikelLagerOrt.kLager = tlager.kLager INNER JOIN
tlagerort ON tArtikelLagerOrt.kLagerOrt = tlagerort.kLagerOrt
WHERE tartikel.cArtNr = 'XXXXX'

SELECT Lagerverwaltung = @Lagerverwaltung+@Lagerverwaltung2



Ich danke für Rat.
 
Werbung:
Also Formatierung, Zeilenumbrüche bzw. die zeilenweise Ausgabe der Daten ist nicht Aufgabe von SQL sondern der Anwendung. Auch wenn man sich das zurecht fuschen könnte, damit wirst du sicher nicht glücklich.

Falls du mit List & Label das von Combit meinst, da gibt es sicher die Möglichkeit das in einem Formular oder einer Vorlage einzurichten. Ich habe so ein Ding mal fürs CRM zusammen gebastelt, das ist auch mehrzeilig. Leider fehlt mir da etwas die Routine.
 
Werbung:
Danke für die Info, habe die Abfrage FAST selbst hinbekommen.

Ich habe das Problem mit leeren / Null Strings, eröffne aber dazu einen neuen Thread.
 
Zurück
Oben