Я борюсь с 3 таблицами, к которым пытаюсь присоединиться и исключаю определенные результаты.По сути, это почти то же самое, что и mysql соединение, где не существует , однако я все еще не могу понять, как успешно объединить несколько таблиц.
Цель состоит в том, чтобы выбрать результаты из таблицы A, гдестрока в промежуточной таблице B равна нулю ИЛИ , где таблица C (связана с B, но не с A) не соответствует конкретному значению.
Что-то вроде:
SELECT x
FROM tablea
LEFT JOIN tableb
ON tablea.x = tableb.x
LEFT JOIN tablec
ON tableb.y = tablec.y
WHERE tableb.x IS NULL
OR tablec.z != 'excluded'
, но это не работает.Я также хотел бы избежать подзапросов, таких как использование NOT IN или NOT EXISTS, чтобы ускорить процесс ... какие-либо предложения?
РЕДАКТИРОВАТЬ: несмотря на то, что я ранее сказал, это должно работать.Просто не забудьте перепроверить правильные скобки, вложение и положение «где» при объединении нескольких объединений