Hallo jangbu,
zum einen könntest Du Dir natürlich über exists und/oder if eine ganz wilde Abfrage basteln. Ich schlage Dir vor eine Funktion zu bauen, die zu einer vorgegebenen Bestellnummer alle Positionen in einem String ausgibt. Da ich die Syntax des
SQL-Servers nicht kenne als pseudo-Code
SQL-Code:
create function (xxx number) return varchar
cursor c_cur select positionen from tab_positionen where bestnr=XXX
tsatz c_cur%ROWTYPE;
satz varchar;
for tsatz in c_cur
loop
satz:=satz+tsatz
end loop
return satz
abgesehen von der Frage was der richtige Ausgabetyp ist, halte ich das für die einfachste Lösung.
Ist bestimmt auch noch optimierbar, aber mir geht's nur um's Prinzip
Gruß
K-H
edit: und Pivot ist noch besser!