Firebird, procedura składowana i pętla FOR

0

Cześć, mam zagnieżdżone pętle FOR.

For select ...... into .... do
begin
  for select .... into ..... do
  begin
  /* jakiś kod */
  end
end

I teraz mam pytanie jak obsłużyć coś takiego, żeby, gdy spełniony jest pewien warunek - nastąpiło wyjście z tej zagnieżdżonej pętli.

W Delphi uzyskuje się to przez polecenie BREAK. Jak to zrobić w SQL na Firebirdzie?

0

jedyne rozwiązanie jakie widzę to rozbicie to na 2 procedury, w pierwszej

proc_1

FOR SELECT ... INTO ... DO
BEGIN
  FOR SELECT * FROM proc_2 INTO ... DO
  BEGIN

    SUSPEND;
  END;
  SUSPEND;
END

proc_2

FOR SELECT * FROM ... INTO ... DO
BEGIN
  IF cos THEN
    EXIT;
  SUSPEND;
END

spowoduje to, że ilość rekordów, jakie zwróci proc_2 będzie uzalezniona od warunku

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0