sasha wrote:

Пробую так:

EXECUTE BLOCK
RETURNS (
  ID INTEGER)
AS
BEGIN
  FOR WITH RECURSIVE TR AS (SELECT * FROM "Tree" WHERE PARENT_ID IS NULL)
    SELECT ID FROM TR INTO :ID AS CURSOR CUR DO
  BEGIN
    UPDATE "Tree" SET NAME = NAME || '!' WHERE CURRENT OF CUR;
    SUSPEND;
  END
END

Я был неправ, этот твой вариант должен работать. Но не работает. Будет починен вместе с union и join. Когда-нибудь... :-)


--
Дмитрий Еманов

Ответить