У меня есть 2 запроса в большом запросе, где я хочу присоединиться к 2 таблицам в каком-то состоянии.
Первый запрос
Второй запрос такой же, но я использую JOIN вместо LEFT JOIN.
Может ли кто-нибудь объяснить мне, почему LEFT JOIN с условием WHERE возвращает разное количество результатов, а затем INNER JOIN?
Разве это не вложенный select? Итак, я думаю, что это действительно синтаксически правильно @GordonLinoff


why LEFT JOIN with WHERE condition returns diffrent results count then INNER JOIN?
Они рассматривают разные стартовые наборы для работы. Вот несколько хороших иллюстраций различий между объединениями:
Соответствующие изображения со ссылочных URL-адресов находятся здесь:


обратите внимание, что OUTER не является обязательным, поэтому левое внешнее соединение равно левому соединению
Хотя это может быть ответом на вопрос, не рекомендуется использовать изображения в качестве ответа. Было бы здорово, если бы вы могли помещать все запросы в текст вместо изображения
Принято к сведению и имеет смысл, но все соответствующие запросы даны во втором URL-адресе, на который имеется ссылка. Иллюстрации даны просто как указатели на соответствующие части для немедленного ответа и взяты из первого ссылочного URL как такового.
Наличие запросов в виде текста может быть приятным, хотя для людей, которые не понимают, что такое объединения, диаграммы Венна, вероятно, лучший способ визуализировать, что делает каждый тип соединения.
Пожалуйста, задавайте вопросы в виде текста, а не изображения.