суббота, 9 февраля 2013 г.

декартово произведение двух множеств в sql

Полное соединение (full join) мы также проводим по неключевому атрибуту — номеру телефона:

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

Выполним для полноты эксперимента еще и внешнее соединение слева по тому же атрибуту:

Как видим, «безработный» Петр Петрович вполне может являться сотрудником НИИ ЧАВО.

Результаты выборки соединением справа

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

Внешнее соединение справа

Результаты выборки соединением слева

В предыдущую выборку не попали «безработные» контакты. Если вы этого и хотели, то примите поздравления. Чтобы показать все контакты с привязкой их к компании, включая нигде не работающих (или неизвестно где работающих), нам придется воспользоваться внешним соединением.

Внешнее соединение слева

Результаты выборки эквисоединением

Оно же называется и внутренним (inner) соединением:

Обычное эквисоединение

Сделаем выборки с использованием различных типов соединений и посмотрим на результаты.

Наши исходные заполненные таблицы будут выглядеть следующим образом:

Рассмотрим типы соединений в SQL на примере двух связанных таблиц, содержащих информацию о контактных лицах и компаниях (см. листинг). Код приведен для MS SQL Server 2000/2005.

Лучше один раз увидеть, чем сто раз услышать. А еще лучше освоить на практике и запомнить, для чего служат различные виды соединений таблиц в SQL-запросах.

Типы соединений в SQL. Шпаргалка

Поиск: Весь сервер Новости Computerworld Мир ПК Открытые системы Windows IT Pro LAN Сети Директор ИС Следите за нами: Авторизоваться с помощью:

Типы соединений в SQL. Шпаргалка - 12, 2007 | Мир ПК | Издательство «Открытые системы»

Комментариев нет:

Отправить комментарий