Иногда, нам нужно одним запросом получить данные не только с одной таблицы, но и с зависимой от нее как «один ко многим». То-есть одной записи из главной таблицы соответствует несколько с зависимой. Это можно сделать несколькими путями. Самый 1-й, который приходит на ум — просто использовать JOIN, но в этом случае мы получим в ответе дублирующиеся записи главное таблицы, и отличающиеся только данными с зависимой. В этом случае нам придется делать дополнительные манипуляции с полученным результатом, чтобы получить более удобную иерархическую структуру данных.
Но, можно сделать проще — можно подготовить вложенную структуру прямо с помощью запроса:
(далее…)