Как вы обнаружили, это не так просто в конструкции MPTT.Вы знаете, как получить всех потомков:
SELECT * FROM tree WHERE lft BETWEEN 2 AND 11;
Вам нужен набор потомков, у которых нет предков, которые также являются потомками родительского узла, с которого вы начинаете.
SELECT * FROM tree t1 WHERE t1.lft BETWEEN 2 AND 11
AND NOT EXISTS (SELECT * FROM tree t2 WHERE t2.lft > 2 AND t2.lft < 11
AND t1.lft > t2.lft AND t1.rgt < t2.rgt);