Aktives Mitglied
Hallo zusammen,
Über eine Stored Procedure soll eine Abfrage ausgeführt werden, die im ersten Schritt die Artikel heraussucht, die im Stammsatz als Dispoartikel gekennzeichnet sind.
Während diese Schleife abgearbeitet wird und die Artikel-ID liefert, sollen innerhalb der Schleife zwei weitere Abfragen sattfinden.
1. Von der gefundenen Artikel-ID die Summe der Anliefermenge
SELECT @sum_we = SUM(anlieferung.menge) FROM anlieferung WHERE artikel-ID = @Artikel-ID
2. Von der gefundenen Artikel-ID die Summe der Warenausgänge
SELECT @sum_wa = SUM(lieferschein.menge) FROM lieferschein WHERE artikel-ID = @Artikel-ID
3. Von den beiden gefundenen Summen soll eine Differenz errechnet werden.
@diff = @sum_we - @sum_wa
Wie ich eine Stored Procedure mache und die Werte aus verschiedenen SQL Abfragen zeitgesteuert mit dem Enterprise Manager in eine Tabelle abspeichere ist kein Problem, was ich nicht hinbekomme ist, die WHILE Schleife zu schreiben, die mir die Atikel-ID liefert, womit ich dann innerhalb der WHILE Schleife weitere Aktionen (sh. Punkt 1, 2 und3) durchführen kann.
Laut Doku ist der Rückgabewert der Schleife ein Boolean (true or false) was meine Abfrage natürlich nicht liefert.
Meine Frage ist nun wie bekomme ich die einzelnen Artikel-ID's gefiltert und dann mit den oben genannten Anweisungen weiterverarbeitet.
Der SQL-Server ist die Version 2003.
Vielen Dank für Eure Hilfe im Voraus.
Gruß
didi01
Über eine Stored Procedure soll eine Abfrage ausgeführt werden, die im ersten Schritt die Artikel heraussucht, die im Stammsatz als Dispoartikel gekennzeichnet sind.
Während diese Schleife abgearbeitet wird und die Artikel-ID liefert, sollen innerhalb der Schleife zwei weitere Abfragen sattfinden.
1. Von der gefundenen Artikel-ID die Summe der Anliefermenge
SELECT @sum_we = SUM(anlieferung.menge) FROM anlieferung WHERE artikel-ID = @Artikel-ID
2. Von der gefundenen Artikel-ID die Summe der Warenausgänge
SELECT @sum_wa = SUM(lieferschein.menge) FROM lieferschein WHERE artikel-ID = @Artikel-ID
3. Von den beiden gefundenen Summen soll eine Differenz errechnet werden.
@diff = @sum_we - @sum_wa
Wie ich eine Stored Procedure mache und die Werte aus verschiedenen SQL Abfragen zeitgesteuert mit dem Enterprise Manager in eine Tabelle abspeichere ist kein Problem, was ich nicht hinbekomme ist, die WHILE Schleife zu schreiben, die mir die Atikel-ID liefert, womit ich dann innerhalb der WHILE Schleife weitere Aktionen (sh. Punkt 1, 2 und3) durchführen kann.
Laut Doku ist der Rückgabewert der Schleife ein Boolean (true or false) was meine Abfrage natürlich nicht liefert.
Meine Frage ist nun wie bekomme ich die einzelnen Artikel-ID's gefiltert und dann mit den oben genannten Anweisungen weiterverarbeitet.
Der SQL-Server ist die Version 2003.
Vielen Dank für Eure Hilfe im Voraus.
Gruß
didi01