У меня возникли проблемы с этим запросом mysql. У меня есть таблица клиентов и таблица заказов, связанная идентификатором клиента. В таблице заказов есть поле даты, и я пытаюсь перечислить имена клиентов, у которых нет заказов за определенный месяц, июль 2016 года. Мне сказали, что NOT IN
может помочь, но я не уверен, как это сделать. Я искал похожие примеры, но они используют IS NULL
. Я попробовал это, но это не понравилось NOT
(не действующий вход на этой позиции:MYSQL соединение таблиц и выбор клиента без заказа на конкретную дату
SELECT customer.cust_name FROM customer LEFT JOIN ordertbl ON ordertbl.cust_id = customer.cust_id WHERE order_date like '2016-07%' not in ordertbl.order_date;
Затем я попытался это, но он не дал результатов:
SELECT customer.cust_name FROM customer LEFT JOIN ordertbl ON ordertbl.cust_id = customer.cust_id WHERE (SELECT COUNT(order_date like '2016-07%')) IS NULL;
Я также нашел не похожий пример, но не смог получить его, никаких результатов:
Select customer.cust_name From customer where ordertbl.cust_id Not in ( Select customer.cust_id From ordertbl Where ordertbl.order_date like '2016-07%');
Я уверен, что я все это сделаю неправильно. Я попробовал несколько других примеров, но они тоже не работали. Любая помощь приветствуется.
Еще truggling? См. Http://meta.stackoverflow.com/questions/333952/why-should-i-provide-an-mcve-for-what-seems-to-me-to-be-a-very-simple-sql-query – Strawberry