Запрос Mysql для поиска клиентов, у которых есть 0 заказов между двумя датами

Goldbug спросил: 26 декабря 2017 в 08:09 в: mysql

См. SqlFiddle: введите описание ссылки здесь

Две таблицы

  1. Клиенты
  2. Заказы

Как найти все заказы клиента между датой 1 и датой 2, даже если у них есть 0 заказов?

Вот что я до сих пор работаю:

select c.customer_name
     , c.date_created
     , o.grandtotal
     , o.order_date
  from Customers c
  left 
  join Orders o 
    on c.customer_id = o.customer_id
 where exists (select o1.* from Orders o1) 
   and c.customer_id in (1, 2, 3, 4)
 group 
    by c.customer_name

I необходимо заказать по дате следующим образом:

select c.customer_name, c.date_created, o.grandtotal, o.order_date
from Customers c
left join Orders o on c.customer_id = o.customer_id
where exists (select o1.* from Orders o1) 
and o.order_date between '2018-01-01' and '2018-01-18'
and c.customer_id in (1, 2, 3, 4)
group by c.customer_name

0 ответов