У меня есть таблица user_groups
, таблица users
и таблица orders
.
Соотношение между ними таково: users.group_id
, orders.user_id
.
Я пытаюсь получить количество пользователей, принадлежащих к каждой группе, и количество заказов, принадлежащих каждой группе через ее пользователей.
Мой код:
select user_groups.*, count(users.id) as user_count, count(orders.id) as order_count
from user_groups
left join users on user_groups.id=users.group_id
left join orders on users.id=orders.user_id
group by user_groups.id
Ожидаемый результат:
id | user_count | order_count
1 | 5 | 67
2 | 1 | 1
Фактический результат:

Количество заказов должно быть 5, а не 71:
