Итак, позвольте мне предисловие к этому, сказав, что я не мастер SQL каким-либо образом. То, что я хочу сделать, просто, как концепция, но представило мне небольшую проблему, пытаясь свести к минимуму количество запросов к базе данных, которые я выполняю.
Скажем, у меня есть таблица отделов. В каждом отделе есть список сотрудников.
Каков наиболее эффективный способ перечисления всех отделов и сотрудников в каждом отделе.
Так например, если у меня есть таблица отдела с:
id name
1 sales
2 marketing
И таблица людей с:
id department_id name
1 1 Tom
2 1 Bill
3 2 Jessica
4 1 Rachel
5 2 John
Каков наилучший способ перечислить все отделы и всех сотрудников для каждого отдела:
Продажа
- Том
- Билл
- Рейчел
Маркетинг
- Джессика
- Джон
Притвориться, что обе таблицы действительно массивные. (Я хочу избежать получения списка отделов, а затем перебирать результат и делать индивидуальный запрос для каждого отдела). Подумайте также о выборе статусов/комментариев в Facebook-подобной системе, когда статусы и комментарии хранятся в отдельных таблицах.