Раньше я использовал несколько возвращенных наборов данных, но накладные расходы и постоянно меняющиеся API для этого, наконец, позволили мне вернуться к использованию только объединений, чтобы вернуть все сразу
Я слежу за размерами набора результатов, но в контексте любого приложения, с которым я столкнулся, это не было проблемой. В общем, я не сожалел об этом, но YMMV.
Несколько результирующих наборов могут быть особенно короткими, если предложения выбора на родительском уровне включают правила выбора на дочернем уровне.
Этот способ обрабатывает все случаи; иногда его разбиение работает, но в некоторых случаях вам понадобятся одиночные запросы; и хорошо иметь только один шаблон - особенно если вы иногда застреваете с рефакторингом с одного на другой.
В итоге вы получаете меньше обращений к базе данных, и управление транзакциями становится проще.