Мы много работаем с вложенными наборами в нашей базе данных. Левое и правое значения родительского узла всегда устанавливают границы значений для его дочерних элементов.
Чтобы найти дочерние элементы любого узла, используя значения lft и rgt:
select
child.id,
child.lft,
child.rgt
from
nodes child,
nodes parent
where
child.lft between parent.lft and parent.rgt
and parent.id != child.id
and parent.id = [ID];
То, что мы сделали здесь, - это создание псевдонима для одной и той же таблицы для дочерних и родительских элементов, а затем поиск дочерних элементов, которые помещаются между указанным родительским узлом. parent.id != child.id
избавляет от избыточной записи на выходе.