Учу sql заново, и у меня возник вопрос зачем вообще нужны джоины. Объеденить таблицы ведь можно с помощью фореина и праймари ключей в таблицах и where. Этот вопрос и раньше возникал и был решён, но опять возникли трудности с пониманием.
Чтобы лучше понять о чем я, есть видосик где объясняется подобный способ: https://www.youtube.com/watch?v=wdz4MRlzOyE&ab_channel=CrackConcepts
Вообще говоря, подобные вопросы не для stackoverflow.com.
Есть несколько типов JOIN:
INNER JOINLEFT OUTER JOINRIGHT OUTER JOINFULL OUTER JOINCROSS JOINБольшинство из них невозможно выразить с помощью предложения WHERE.
Это CROSS JOIN, который в принципе можно урезать с помощью WHERE до нужного состояния.
Но при этом, вы полагаетесь на возможности планировщика СУБД.
Если он способен понять, что ваш WHERE аналогичен JOIN, то вы получите результат аналогичный JOIN, иначе вы рискуете нарваться на загрузку декартова произведения(CROSS JOIN) строк таблиц в память с последующей фильтрацией. =)
Сборка персонального компьютера от Artline: умный выбор для современных пользователей