Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > SQL, базы данных
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 09.01.2013, 21:38   #1
ds.Dante
Старожил
 
Аватар для ds.Dante
 
Регистрация: 06.08.2009
Сообщений: 2,992
По умолчанию Количество дочерних элементов дерева

Прошёл сегодня предварительное собеседование для Microsoft. Им нужен SQL, которого я почти не знаю, но мне дали возможность подучить его до собеседования с американцами. Вот вопрос, который я завалил:

Дана таблица, содержащая id узла дерева и id соответствующего родительского элемента, например:
Код:
id parent
1  null
2  1
3  1
4  2
5  2
6  5
(получается двоичное дерево)

Нужно написать запрос, возвращающий id и количество дочерних элементов, то есть:
Код:
id children_count
1  2
2  2
3  0
4  1
5  0
6  0
Нормально заняться изучением языка я не успею, попытаюсь хотя бы нахвататься примеров; поэтому прошу просто решить задачку.
ds.Dante вне форума Ответить с цитированием
Старый 09.01.2013, 21:43   #2
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Например так
Код:
SELECT T1.id,
    (SELECT COUNT(*) FROM Table1 T2 WHERE T2.parent=T1.id)  AS children_count
  FROM Table1 T1
С четветкой тоже 0. С пятеркой 1
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 09.01.2013, 21:59   #3
ds.Dante
Старожил
 
Аватар для ds.Dante
 
Регистрация: 06.08.2009
Сообщений: 2,992
По умолчанию

Блин, мог же и сам догадаться...

Спасибо!
ds.Dante вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
С++ Задача(Определить количество отрицательных элементов, количество элементов в интервале от 1 до 5) grosssmile Помощь студентам 0 29.09.2012 18:25
Получение дочерних элементов в PivotTable motorway Microsoft Office Excel 32 31.08.2010 00:17
В массиве из п элементов много совпадающих элементов. Найти количество различных элементов Strax Фриланс 11 12.06.2010 20:13
Дан массив из N элементов (чисел),определить количество элементов кратных 3. Woha Общие вопросы C/C++ 2 08.12.2008 13:12
количество элементов матрицы, больших среднего арифмитического всех её элементов finch Помощь студентам 3 27.08.2007 15:48