"Tonal" ...
> Ошибся чуток:
Да не, не чуток :)
Во-первых, вот так :
WITH RECURSIVE TR AS
(
SELECT T.*, 1 AS LEV FROM "Tree" T
WHERE PARENT_ID IS NULL
AND RDB$SET_CONTEXT('USER_TRANSACTION', 'Level', 0) >= 0
UNION ALL
SELECT T.*, TR.LEV + 1 AS LEV FROM "Tree" T, TR
WHERE PARENT_ID = TR.ID
AND RDB$SET_CONTEXT('USER_TRANSACTION', 'Level', TR.LEV + 1) >= 0
AND RDB$GET_CONTEXT('USER_TRANSACTION', 'Level') < 5
)
SELECT ID, LEV FROM TR
Во-вторых, это закладывается на порядок вычисления условий
В-третьих, это всё равно не позволит избежать чтения записей с уровня 5
--
Хорсун Влад