@vadimek
Полуджун

Как сделать пагинацию с join?

Есть сущность с несколькими ассоциациями, мне надо вывести несколько, например, 20 основных сущностей и все их ассоциации. Если делать LIMIT OFFSET, то в БД же они выводятся подряд все и, соответственно, отрезается всё, кроме первых 20 строк, среди которых могут быть записи, относящиеся только к одной, первой, основной сущности.

Допустим, главная сущность – Пользователь и ассоциация Заказы.
Будет так:
1) Пользователь1, Заказ1
2) Пользователь1, Заказ2
3) Пользователь2, Заказ5
4) Пользователь2, Заказ6
5) Пользователь2, Заказ11
6) Пользователь3, Зазаз29

и LIMIT 3, тогда это даст мне только пользователя1 со всеми его заказами и пользователя2 с неполным набором заказов, а нужно 3 пользователя и каждый с полным набором заказов и чтобы при этом условия WHERE не ломались, потому что если сделать с подзапросом: сначала выбрать три пользователя, а потом к ним уже джоины, where работать не будет.
Как быть?
  • Вопрос задан
  • 143 просмотра
Решения вопроса 1
@vadimek Автор вопроса
Полуджун
Конечно, так, совсем забыл, что там второй параметр делает это возможным, причем по умолчанию.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы