задать лимит на выборку по количеству дочек?
Например: Есть таблицы users и projects. В таблице projects есть поле user_id. И вот мне надо выбрать 50 юзеров, и у каждого из них что бы были проекты, но не более 20. Но бегать за проектами каждого юзера в базу не очень хочется. Как можно это реализовать за наименьшее кол-во походов в базу?
СУБД какая?
Бегай за проектами каждого юзера на базу
Postres
это же будет дофига запросов, разве никак нельзя оптимизировать это?
см. row_number() over(user_id)
Может, всё-таки, postgres (или таки progress)? ;) Посмотрите на LATERAL.
Это НЕ будет дофига запросов. Запрос надо сдать только если пользователь захочет посмотреть именно проекты конкретного пользователя
не, есть страница с юзерами, и на этой странице у каждого юзера должна сразу показываться пачка его последних проектов, поэтому проекты надо сразу загружать
А зачем? Страница с юзерами? Показывай юзеров. Ткнут в юзера — покажешь проекты.
50х20 = 1000 - там будут одни проекты, а не пользователи.
согласен, но хотят что бы так было
"Хочется, — перехочется".
Обсуждают сегодня