ВВЕДЕНИЕ В СИСТЕМЫ УПРАВЛЕНИЯ БАЗАМИ ДАННЫХ

         

Естественное соединение


Определение 10. Пусть даны отношения

и
, имеющие одинаковые атрибуты
(т.е. атрибуты с одинаковыми именами и определенные на одинаковых доменах).

Тогда естественным соединением отношений

и
называется отношение с заголовком
и телом, содержащим множество кортежей
, таких, что
и
.

Естественное соединение настолько важно, что для него используют специальный синтаксис:

Замечание. В синтаксисе естественного соединения не указываются, по каким атрибутам производится соединение. Естественное соединение производится по всем одинаковым атрибутам.

Замечание. Естественное соединение эквивалентно следующей последовательности реляционных операций:

  • Переименовать одинаковые атрибуты в отношениях
  • Выполнить декартово произведение отношений
  • Выполнить выборку по совпадающим значениям атрибутов, имевших одинаковые имена
  • Выполнить проекцию, удалив повторяющиеся атрибуты
  • Переименовать атрибуты, вернув им первоначальные имена

    Замечание. Можно выполнять последовательное естественное соединение нескольких отношений. Нетрудно проверить, что естественное соединение (как, впрочем, и соединение общего вида) обладает свойством ассоциативности, т.е.

    поэтому такие соединения можно записывать, опуская скобки:

    Пример 10. В предыдущем примере ответ на вопрос "какие детали поставляются поставщиками", более просто записывается в виде естественного соединения трех отношений

    (для удобства просмотра порядок атрибутов изменен, это является допустимым по свойствам отношений):



    Номер поставщика

    PNUM

    Наименование поставщика

    PNAME

    Номер детали

    DNUM

    Наименование детали

    DNAME

    Поставляемое количество

    VOLUME

    1 Иванов 1 Болт 100
    1 Иванов 2 Гайка 200
    1 Иванов 3 Винт 300
    2 Петров 1 Болт 150
    2 Петров 2 Гайка 250
    3 Сидоров 1 Болт 1000

    Таблица 20 Отношение P JOIN PD JOIN D



    Содержание раздела