Здавалка
Главная | Обратная связь

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



Внешние соединения возвращают все строки хотя бы из одной таблицы или представления, упомянутых в предложении FROM, если они удовлетворяют условиям поиска WHERE или HAVING. Все строки, получаемые из левой таблицы, образуют левое внешнее соединение, а строки, получаемые из правой таблицы, — правое внешнее соединение. Все строки их обеих таблиц возвращаются в полном внешнем соединении.

Для внешних соединений в предложении FROM SQL Server использует ключевые слова ISO:

· LEFT OUTER JOIN или LEFT JOIN; Левое внешнее соединение

· RIGHT OUTER JOIN или RIGHT JOIN; Правое внешнее соединение

· FULL OUTER JOIN или FULL JOIN. Полное внешнее соединение

 

 

 

Левое, правое и полное внешние соединения.

Внешние соединения возвращают все строки хотя бы из одной таблицы или представления, упомянутых в предложении FROM, если они удовлетворяют условиям поиска WHERE или HAVING. Все строки, получаемые из левой таблицы, образуют левое внешнее соединение, а строки, получаемые из правой таблицы, — правое внешнее соединение. Все строки их обеих таблиц возвращаются в полном внешнем соединении.

Для внешних соединений в предложении FROM SQL Server использует ключевые слова ISO:

· LEFT OUTER JOIN или LEFT JOIN; Левое внешнее соединение

· RIGHT OUTER JOIN или RIGHT JOIN; Правое внешнее соединение

· FULL OUTER JOIN или FULL JOIN. Полное внешнее соединение

 

Декартово произведение.

Декартово произведение n таблиц - это таблица, содержащая все возможные строки r, такие, что r является сцеплением какой-либо строки из первой таблицы, строки из второй таблицы, ... и строки из n-й таблицы (Выделение с помощью SELECT любое подмножество реляционной таблицы), то осталось лишь выяснить, можно ли с помощью SELECT получить декартово произведение. Для получения декартова произведения нескольких таблиц надо указать во фразе FROM перечень перемножаемых таблиц, а во фразе SELECT – все их столбцы.

Перекрестные соединения.

Оператор SQL CROSS JOIN формирует таблицу перекрестным соединением (декартовым произведением) двух таблиц. При использовании оператора SQL CROSS JOIN каждая строка левой таблицы сцепляется с каждой строкой правой таблицы. В результате получается таблица со всеми возможными сочетаниями строк обеих таблиц

Синтаксис:

  SELECT column_names [,... n] Выбор значения column_names с учётом только тех текстовых значений, которые заканчиваются на n. FROM Table_1 Из таблицы CROSS JOIN Table_2 Выполняя перекрёстное соединение с Table_2

 

Синтаксис и правила использования подзапросов.

Подзапрос-вложение в запрос.

Подзапрос возвращает значение, которое будет использоваться в основном запросе. Использования подзапросов, есть использования по очереди двух запросов, сперва получаем данные из подзапроса, а затем используем эти данные в качестве данных основного запроса.

Синтаксис:

SELECT значение

FROM таблица

(SELECT значение

FROM таблица)

 

Типы подзапросов.

Существует два типа подзапросов:

· Подзапросы возражающие один результат (однострочные)

· Подзапросы возражающие множество строк в качестве результата (многострочные)

Есть также многостолбцовые подзапросы, которые являются запросами, возвращающими больше чем один столбец из внутреннего оператора SELECT.

Синтаксис однострочного подзапроса:

SELECT значение

FROM таблица

(SELECT значение

FROM таблица)

 







©2015 arhivinfo.ru Все права принадлежат авторам размещенных материалов.