Внутреннее соединение - это соединение, в котором отображаются только результаты, результаты которых находятся в обеих таблицах. Внешнее объединение будет отображать результаты для всех ключей в одной таблице, левое соединение из первого и правое соединение со второй. Например:
Допустим, таблица table1 имеет следующие пары первичного ключа и данных: (1, a), (2, b), (3, c)
Давайте также скажем, что таблица2 имеет следующие пары первичного ключа и данных: (1, веселье), (3, может), (4, случиться)
Таким образом, внутреннее соединение table1 к table2 на первичных ключах приведет к следующим результирующим триплетам (с общим первичным ключом первым, вторым элементом первой таблицы и вторым элементом второй таблицы): (1, a, fun), ( 3, с, можно)
При левом внешнем соединении таблиц table1 и table2 первичных ключей получаются следующие результирующие триплеты (в том же формате, что и выше): (1, a, fun), (2, b, NULL), (3, c, can)
Правое внешнее соединение table1 к table2 на первичных ключах приведет к следующим результирующим триплетам (в том же формате, что и выше): (1, a, fun), (3, c, can), (4, NULL, случается)
Я надеюсь, что это хорошо объясняет концепцию.