Einzelnen Beitrag anzeigen

marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#13

Re: Ein paar SQL Fragen ( stored procedure )

  Alt 21. Jun 2005, 18:52
Hallo Sven,

ich habe keine Ahnung was Informix kann, aber ich würde etwa so vorgehen:

Du übergibst neben den Feldwerten noch deinen Suchbereich sb an deine Stored Procedure. In deinem Beispiel wäre sb = 10000. In deiner SP würdest du als erstes die Grenzen deines Suchbereiches festlegen:

SQL-Code:
lBound = :sb * 100 + 1
uBound = :sb * 100 + 98
Anschließend kannst du einen Cursor definieren für:

SQL-Code:
DECLARE c CURSOR FOR
SELECT nummer + 1 AS freienummer FROM tabelle o
WHERE o.nummer between lBound and uBound
AND NOT EXISTS (
  SELECT i.nummer FROM tabelle i WHERE i.nummer = o.nummer + 1
)
Dieser Cursor listet dir alle freien Nummern im Range ...01 bis ...99, aber du kannst eventuell den result set auf ein singleton limitieren.

Grüße vom marabu
  Mit Zitat antworten Zitat