Извиняюсь, забыл указать еще одно условие - 
выборку нужно начинать с определенной записи и вниз по "детям".
Пример
|    id    |     parent    |    view_type    |
-----------------------------------------------
    1            0                 group
    2            1                 group
    3            1                 self
    4            2                 self
    5            0                 CCatalogue
    6            5                 self
Если начальная запись поиска 1, то результат должен быть записи 3-я и 4-я,
если начальная запись поиска 3, то результат должен быть записи 3-я.
Кому надо тестовы данные:
[SQL]CREATE TABLE vb_test_main (
id int(4) NOT NULL UNIQUE,
parent int(4),
view_type varchar(255),
PRIMARY KEY (id));
INSERT INTO vb_test_main VALUES ('1', '0', 'group');
INSERT INTO vb_test_main VALUES ('2', '1', 'group');
INSERT INTO vb_test_main VALUES ('3', '1', 'self');
INSERT INTO vb_test_main VALUES ('4', '2', 'self');
INSERT INTO vb_test_main VALUES ('5', '0', 'CCatalogue');
INSERT INTO vb_test_main VALUES ('6', '5', 'self');[/SQL]
Profic
Все верно, но ввиду вновь введенного условия этот метод не приемлим.
Жаль, я вчера тоже покапался в документации ничего не нашел, но надеялся может все же что-то есть чего не знаю 

...
Нет не известна заранее глубина, хотя может и имеет смысл ввести дополнительное поле, но если честно очень-очень не люблю "плодить" данные которые и так понятны.
Чтож пусть пост повисит, может кто-нибудь, что-нибудь интересное предложит....
basboy
Да, Вы правы, доп. условие выше.