У меня есть эти таблицы:
customer
--------
customer_id int
name varchar(255)
order
-----
order_id int
customer_id int
discount boolean
Я могу получить количество заказов, сделанных каждым клиентом с помощью запроса:
select c.id, count(o.order_id)
from customer c
left join order as o using c.customer_id = o.customer_id
group by 1
Кроме того, я могу получить количество заказов со скидкой, сделанных каждым клиентом:
select c.id, count(o.order_id)
from customer c
left join order as o using c.customer_id = o.customer_id and o.discount = true
group by 1
Но я не могу найти способ получить оба в одном запросе. Я пробовал следующее:
select c.id, count(o.order_id), count(o2.order_id)
from customer c
left join order as o using c.customer_id = o.customer_id
left join order as o2 using c.customer_id = o2.customer_id and o2.discount = true
group by 1
Но это не сработало. Можно ли рассчитать оба в одном (MySql) запросе?
Ура,
Дон