Помогите с запросом

DiZe

Новичок
Помогите с запросом

есть таблица с деревом

id name parent
1 Имя_1 0
2 Имя_2 0
3 Имя_3 2
4 Имя_4 2
5 Имя_5 2
6 Имя_6 1
7 Имя_7 0

где parent это id предка
1) Надо получить результат для заданного предка (например для 0) в виде

id name (количество потомков)
1 Имя_1 1
2 Имя_2 3
7 Имя_7 0

В общем этого достаточно, но можно ли:
2) Узнать, является ли некая N айдишником для потомка?

Сделал пока в виде нескольких запросов, но хочется сделать всё это в виде одно.
Помогите, кому немного времени не жалко.

Спасибо!
 

DiZe

Новичок
ну например надо узнать, чьим потомком является запись с Id==5

А можно поподробнее про джойн?
 

DiZe

Новичок
ясно по паренту, но вот как одним запросом, чтоб вырнули что-то типа

id name (количество потомков) (искомая величина?)
1 Имя_1 1 0
2 Имя_2 3 1
7 Имя_7 0 0
 

Mr_Max

Первый класс. Зимние каникулы ^_^
Команда форума
DiZe
Скажи, пожалуйста, что сделал
__именно ты__
для решения своей задачи?

Какие запросы пробовал?

Что получалось?
 

DiZe

Новичок
Select() - обёртка для mysql_select(), возвращает количество затронутых строк.

PHP:
<?
	$cat = 5;
	$count=Select("ID,Title FROM Table WHERE parent=1;");		
	for ($i=0;$i<$count;$i++){	
		list($id,$title)=FetchRow();
		$count2_activeChilds=Select("ID FROM Table WHERE parent=$id AND ID=$cat LIMIT 1;");
		$count2=Select("ID,Title FROM Table WHERE parent=$id;");					
			
	}
?>
Сейчас работает 3мя запросами, что довольно медленно. Можно ли как-то объединить в один?
 

Mr_Max

Первый класс. Зимние каникулы ^_^
Команда форума
Сейчас работает 3мя запросами
Но что из того?

Тебе ответили в первом-же ответе.
Из твоего ответа я могу сделать вывод - что ты палец о палец не ударил, чтобы применить полученную подсказку на деле, а копипастишь сюда свой старый код.

Извини, но в данном форуме готовых ответов не дают.
 
Сверху