SELECT DISTINCT d.customer_id, d.date_added FROM `order` d
WHERE d.customer_id NOT IN (
SELECT DISTINCT i.customer_id
FROM `order` i
WHERE i.date_added > '2015-02-15 14:00:00'
)
ORDER BY d.date_added DESC;
Вышеуказанный запрос должен возвращать customer_id клиентов, которые не заказывали после 15 февраля 2015 года (я думаю). Но самая первая запись
17168, 2015-08-16 17:36:00
MySQL Запрос не в другом запросе
Что я делаю неправильно?
Это ниже запрос
SELECT DISTINCT i.customer_id,i.date_added FROM `order` i
WHERE i.date_added > '2015-02-15 14:00:00'
ORDER BY i.date_added ASC;
возвращает ожидаемый результат, т.е. список идентификаторов клиентов для размещенных заказов после 15 февраля
P.S. customer_id не может быть NULL
быть очень осторожными при использовании 'не в', как вы можете получить неожиданное отнимающие много время, чтобы результаты отладки при работе с допустимостью пустым. Не говори, что это твоя проблема. – Drew
Я предполагаю, что заказчик также заказал bevor the fe15. – Jens
@Drew customer_id не может быть NULL. – OC2PS