2015-09-30 2 views
-1

В чем основные отличия между JOINS (INNER JOIN, LEFT OUTER JOIN, RIGHT OUTER JOIN и т. Д.) И операциями SET (INTERSECT, MINUS и т. Д.)?Различия между объединениями и наборами в sql?

+0

Inners, lefts и т. Д. Не является ли функциональность, введенная в oracle 9i, существует с самой первой версии. Oracle следует стандартам [SQL ANSI 92] (http://www.iso.org/iso/catalogue_detail.htm?csnumber=16663). –

+0

Единственное сходство, которое я вижу между объединениями и операциями типа intersect и минус, - это ключевые слова sql. Я не вижу никаких общих черт в их функциональности. –

+1

Ваше первое предложение ложно, за исключением самого широкого смысла. –

ответ

2

Прежде всего, соединения и операции набора - это два разных чайника рыбы. Соединения могут позволить вам фильтровать строки между наборами, это правда, но они намного больше (вы можете сделать гораздо более широкую строку, соединяя таблицы и выбирая столбцы из всех таблиц, тогда как операции набора работают над наборами строк, которые имеют одинаковую ширину).

То, как я мысленно рисую вещи, состоит в том, что соединения горизонтальны (т. Е. Строки из таблицы 1 находятся рядом с соответствующими строками из таблицы2, которые находятся рядом с соответствующими строками из таблицы 3 и т. Д.), Тогда как заданные операции являются вертикальными (как в строки из второго набора находятся под строками из первого набора). Когда вы решите использовать операции с множествами над объединениями, это сильно зависит от ситуации. Как принято решать, использовать ли молоток или отвертку для крепления двух кусков дерева - не могли бы вы использовать молоток для ввинчивания винта в древесину?

Во-вторых, Oracle всегда (ну, поскольку, по крайней мере, версия 7!) Присоединилась. Соединения являются основополагающими для работы реляционных баз данных!

Я предполагаю, что вы действительно спрашиваете, почему Oracle представил синтаксис ANSI для объединений, и я бы предположил (вам придется спросить Ларри по всем причинам!), Что он должен был привести Oracle в соответствие с стандарты ANSI для объединений, которые были приняты многими другими платформами РСУБД.

Смежные вопросы