"WildSery" ...

> execute block returns (id1 int, id2 int)
> as
> declare c1 cursor for (select id from procedure1 order by 1);
> declare c2 cursor for (select id from procedure2 order by 1);
> begin
>    open c1; open c2;
>    fetch c1 into id1;
>    if (row_count=0) then exit;
>    fetch c2 into id2;
>    if (row_count=0) then exit;
>
>    while (0=0) do begin
>      if (id1 < id2) then begin
>        fetch c1 into id1;
>        if (row_count=0) then exit;
>      end else
>      if (id1 > id2) then begin
>        fetch c2 into id2;
>        if (row_count=0) then exit;
>      end else begin
>        suspend;
>        fetch c1 into id1;
>        if (row_count=0) then exit;
>      end
>    end
> end

    Это не будет работать, если в c2 есть повторяющиеся значения

-- 
Хорсун Влад


Ответить