Общие > Базы данных

отцы и дети

(1/2) > >>

Enemy:
Есть таблица с полями - uid, parent_uid, name есть такой вопрос -

1. как одним запросом вывести всех отцов у которых есть дети. (грубо говоря пускай отцом будет тот у кого parent_uid=0)

2. как тем же одним запросом сделать тоже самое + вывести количество детей каждого отца


З.Ы. задача вроди простая... сказал друзьям - те думают :). Есть уже два варианта - но не очень... Первый с использованием запроса в запросе. Второй с использованием дополнительного поля в таблице.

Макс:
варианты с изменением структуры не предлагать ?

ondr:
1.
SELECT t1.uid, t1.name, t1.parent_uid
FROM test t1, test t2
WHERE t1.parent_uid=0 && t1.uid=t2.parent_uid
GROUP BY t1.uid

2. по аналогии

ondr:
в догонку

2.

SELECT t1.uid, t1.name, t1.parent_uid, count(t1.uid) as childs
FROM test t1, test t2
WHERE t1.parent_uid=0 && t1.uid=t2.parent_uid
GROUP BY t1.uid

Enemy:
ondr
а что это значит?

--- Цитировать ---test t1, test t2
--- Конец цитаты ---

две таблицы? или... пожалуйста обьясни.

Навигация

[0] Главная страница сообщений

[#] Следующая страница

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 
Перейти к полной версии