Разница между внутренним и внешним соединением

Основное различие: объединения в SQL выполняются для объединения данных двух разных таблиц. Внутреннее соединение - это условие, результатом которого являются строки, которые удовлетворяют условию «где» во «всех таблицах»; тогда как внешнее соединение - это условие, которое приводит к тем строкам, которые удовлетворяют условию «где» в «хотя бы одной из таблиц».

При реализации объединений создаются временные таблицы, основанные на столбцах. Для условий соединения всегда должно быть две таблицы. Эти условия затем объединяют соответствующие компоненты одной таблицы с другими компонентами и создают совершенно новую таблицу. Целью этих таблиц является извлечение значимых и необходимых данных или информации. В зависимости от условий существует два типа соединений: внутреннее и внешнее.

«Внутреннее соединение» - это приложение-ориентированное соединение. Он используется в тех таблицах базы данных, которые обеспечивают ссылочную целостность. Это те поля объединения, которые не гарантируют условия NULL. Внутреннее соединение в большинстве случаев предпочтительнее, так как оно основано на стандартах ACID (атомарность, согласованность, изоляция, долговечность). Они обеспечивают безопасность и интеграцию данных, поскольку они надежны в реляционных базах данных. Наряду с реляционными базами данных они также применимы в хранилищах данных.

SQL INNER JOIN Синтаксис:

ВЫБЕРИТЕ имя столбца (ов)

ИЗ таблицы 1

INNER JOIN table2

ON table1.column_name = table2.column_name;

Ключевое слово INNER JOIN выбирает все строки из обеих таблиц, если есть совпадение между столбцами в обеих таблицах.

Внутренние объединения зависят от выбора дизайна и характеристик базы данных. Соответственно, эти внутренние соединения используются в Equi-Joins и Natural Joins. В Equi Join существует определенный тип сравнения, который используется для выравнивания двух данных таблиц. Следовательно, эта таблица использует равный предикат. Естественное соединение - это тип соединения Equi.

Синтаксис для Equi Join выглядит следующим образом:

S ELECT *

ИЗ таблицы 1, таблицы 2

ГДЕ table1.coloumn_name = table2.coloumn_name;

Если столбцы в равном объединении имеют одинаковые имена, то соответствующая версия SQL предоставляет необязательную сокращенную запись, которая может быть выражена конструкцией USING как:

ВЫБРАТЬ *

FROM table1 INNER JOIN table2 USING (столбец_имя);

Синтаксис для Natural Join выглядит следующим образом:

ВЫБРАТЬ *

ИЗ таблицы 1 ЕСТЕСТВЕННОЕ СОЕДИНЕНИЕ table2;

«Внешнее соединение» не требует условий соответствия для записей. Это условие соединения поддерживает все другие записи, кроме несоответствующих записей. Это соединение далее распределяется в условиях левого, правого и полного внешнего соединения, которые реализуются в соответствии с желаемыми условиями и атрибутами таблицы.

Левое внешнее соединение

Ключевое слово LEFT JOIN возвращает все строки из левой таблицы (table1) с соответствующими строками в правой таблице (table2). Это приводит к «NULL» в правой части, когда нет совпадения.

Синтаксис для левого внешнего соединения следующий:

ВЫБЕРИТЕ имя столбца (ов)

ИЗ таблицы 1

ЛЕВОЕ ВНЕШНЕЕ СОЕДИНЕНИЕ table2

ON table1.column_name = table2.column_name;

Правое внешнее соединение

Ключевое слово RIGHT JOIN возвращает все строки из правой таблицы (table2) с совпадающими строками в левой таблице (table1). Результат равен NULL в левой части, когда нет совпадений.

Синтаксис для Right Outer Join выглядит следующим образом:

ВЫБЕРИТЕ имя столбца (ов)

ИЗ таблицы 1

ПРЯМОЕ НАРУЖНОЕ СОЕДИНЕНИЕ table2

ON table1.column_name = table2.column_name;

Полное внешнее соединение

Ключевое слово FULL OUTER JOIN возвращает все строки из левой таблицы (table1) и правой таблицы (table2). Ключевое слово FULL OUTER JOIN объединяет в себе как результат LEFT, так и RIGHT.

Синтаксис для полного внешнего соединения:

ВЫБЕРИТЕ имя столбца (ов)

ИЗ таблицы 1

ПОЛНОЕ НАРУЖНОЕ СОЕДИНЕНИЕ table2

ON table1.column_name = table2.column_name;

Сравнение между Inner Join и Outer Join:

Внутреннее соединение

Внешнее соединение

Основная функция

Внутренние объединения в основном используются для поиска совпадающих строк между двумя таблицами.

Внешнее объединение сохраняет строки либо таблицы, либо обеих таблиц.

Наличие общих переменных

Здесь общая переменная обязательно должна быть в обеих таблицах.

Здесь переменная зависит только от первой таблицы, которая может присутствовать или не присутствовать во второй таблице.

Возвращает

Внутреннее объединение будет возвращать только те строки, в которых есть совпадение на основе предиката соединения.

Внешнее объединение вернет все строки независимо от того, основаны они на совпадениях или нет на основе предиката соединения.

Использовал к

Он используется для просмотра записей только тогда, когда записи присутствуют в обеих таблицах.

Он используется для просмотра всех записей только в одной таблице.

Применимо в

Они применимы в:

Equi-Join и

Natural Join

Они применимы как:

Левое внешнее соединение

Правое внешнее соединение

Полное внешнее соединение

Рекомендуем

Похожие статьи

  • популярные сравнения: Разница между простыней и покрывалом

    Разница между простыней и покрывалом

    Основное различие: простыня - это кусок льна или ткани, который используется для покрытия матраса, и простыня, на которой человек лежит непосредственно. Покрывало для кровати представляет собой покрытие для кровати и может быть простыней, одеялом, одеялом или одеялом. Простыня и покрывала - это два типа покрытий, которые используются для одевания кровати. Если вы когда-либо смотрели фильмы или посещали отель, вы видели, что кровать имеет несколько слоев, которые нужно снимать во сне. П
  • популярные сравнения: Разница между шунтирующей хирургией и ангиопластикой

    Разница между шунтирующей хирургией и ангиопластикой

    Ключевое отличие: шунтирование используется для лечения суженных артерий. Вокруг участка заблокированной артерии создается обход или обход. Этот новый путь создается с помощью трансплантата. Ангиопластика - это процедура, при которой коронарные артерии разблокированы. Процедура ангиопластики не требует операции на открытом сердце. Артерии могут быть з
  • популярные сравнения: Разница между кофе и эспрессо

    Разница между кофе и эспрессо

    Основная разница: кофе и эспрессо очень похожи друг на друга, так как они изготовлены из кофейных зерен и обрабатываются горячей водой. Кофе изготавливается путем сочетания подходящего куска молотого кофе в зернах и горячей воды. Кофе эспрессо - это разновидность кофе. Это сделано с помощью эспрессо-машины, заполняя чашку фильтра порта молотым эспрессо, наполняя его и пропуская горячую воду через него. Кофе - огромна
  • популярные сравнения: Разница между шифрованием, кодированием и хешированием

    Разница между шифрованием, кодированием и хешированием

    Основное различие: шифрование, кодирование и хеширование - это методы, используемые для преобразования формата данных. Шифрование используется для преобразования обычного текста в зашифрованный текст, чтобы его могли понять только уполномоченные лица. Кодирование используется для изменения данных в специальный формат, который делает их доступными для внешних процессов. При хешировании данные преобразуются в дайджест сообщения или хеш, который обычно представляе
  • популярные сравнения: Разница между гайками и болтами

    Разница между гайками и болтами

    Основное различие: болт - это тип винта, который используется для скрепления предметов. Гайка - это маленький металлический предмет, который крепится к болту. Болты и гайки почти всегда используются вместе для скрепления комплекта деталей. Гайка - это маленький металлический предмет, а болт - это в основном винт. Орех - это маленький шестиугольный предмет из металла. Он имеет форму шестиугольника, так что его легко и прочно удерживат
  • популярные сравнения: Разница между яйцеклеткой и спермой

    Разница между яйцеклеткой и спермой

    Ключевое отличие: сперма - это гамета, которая вырабатывается в яичке мужчины, тогда как яйцеклетка - это гамета, которая вырабатывается в яичнике женщины. Гамет можно описать как репродуктивную клетку, несущую один набор неспаренных хромосом. Овум также известен как яйцеклетка. Это клетки, которые являются частью репродуктивной системы женщины и являются одними из самых больших клеток в женском организме. С другой стороны, сперматозоиды яв
  • популярные сравнения: Разница между Ягуаром и Пантерой

    Разница между Ягуаром и Пантерой

    Ключевая разница: Ягуар и Пантера - две разные большие кошки. Ягуары крупнее и приземистее, и в основном встречаются в западном полушарии. Пантеры - мощные, умные и экзотические животные, и в основном их можно найти в Латинской Америке, Азии и Африке. Ягуары - это компактные и мускулистые животные. Пантера - это род в семье Felidae, который состоит из львов, тигров и других крупных кошек. Ягуары - одиночные животные, которые живут и охотятся в один
  • популярные сравнения: Разница между незамужним и одиноким в семейном положении

    Разница между незамужним и одиноким в семейном положении

    Ключевое отличие: не состоящий в браке относится к семейному положению человека. В нем упоминается, что либо он никогда не был женат, либо не вступал в повторный брак после развода, тогда как одинокий может означать, что человек юридически разлучен, или этот человек никогда не был женат. И не состоящие в браке, и не состоящие в браке термины являются нейтральными в гендерном отношении Семейное положение используется для указания того, женат ли человек или нет. Браки или свадьбы являются неотъемлемой частью общества. Э
  • популярные сравнения: Разница между континентальной и итальянской едой

    Разница между континентальной и итальянской едой

    Ключевое отличие : Continental Food - это обобщенный термин, который в совокупности относится к кухням Европы и других западных стран. Итальянская кухня - это смесь кухонь Тосканы, Рима и Италии в целом. Континентальная еда относится к кухням восточных и западных регионов Европы. Западные кухни довольно разнообразны между собой, с различными блюдами

Выбор редакции

Разница между Moto X и Lumia 1020

Ключевое отличие: в мае 2013 года Motorola - компания Google, объявила о выпуске своего флагманского телефона Moto X. Телефон был официально доступен 23 августа 2013 года. Lumia 1020 - последний флагманский телефон Nokia. Motorola Mobility, приобретенная Google 15 августа 2011 года, объявила о выпуске своего флагманского телефона Moto X. Телефон был официал