Я пытался выполнить это 1015 * несколькими разными способами, и у меня не получится. Я пытаюсь выяснить идентификаторы клиентов, которые не запланировали встречу в этом году.
Мой первый запрос занимает навсегда , и большую часть времени занимает тайм-аут:
SELECT c.clientId
FROM clients c
WHERE NOT EXISTS (
SELECT a.appointmentId FROM appointments a WHERE a.date >= "2020-02-15" AND c.clientId = a.clientId)
Мой второй запрос очень быстрый, но, скорее всего, он не принимает НЕ в расчет. Результаты показывают то же самое, как если бы я запустил запрос без NOT EXISTS. Я думаю, это означает, что я не соответствую a.clientId = c .clientId. Но я не могу понять, как заставить это работать.
SELECT c.clientId
FROM clients c
WHERE c.clientId NOT IN (
SELECT a.appointmentId FROM appointments a WHERE a.date >= "2020-02-15")
Я также попробовал это третьим способом без удачи, он возвращает пустой набор:
SELECT c.clientId
FROM clients c
LEFT JOIN appointments a
ON a.clientId = c.clientId
WHERE a.appointmentId IS NULL
AND a.date >= '2020-02-15'
Заранее спасибо!