Повна версія

Головна arrow Інформатика arrow Бази даних: проектування

  • Увеличить шрифт
  • Уменьшить шрифт


<<   ЗМІСТ   >>

Реляційна операція "Проекція"

Суть операції "Проекція" полягає в отриманні обмеженого набору доменів одного і пов'язаних відносин. Фактично дана операція необхідна, коли потрібно обмежити набір даних не рівнем кортежів, як в операції "Скорочення", а рівнем доменів, що дозволяє в подальших операціях обмежитися тільки тим набором даних щодо, які будуть відповідати тільки зазначеним в операції доменів.

Припустимо, що вихідне відношення має в своєму атрибутивном складі наступні домени:

a {А, B, С, ..., Х, У, Z). (1.3)

В результаті виконання операції "Проекція", де визначені як необхідні домени [А, В, X , 2], буде отримано відношення з наступними доменами:

r {А, В, Х, Z}. (1.4)

Таким чином, операція "Проекція" призводить до отримання "вертикального" підмножини з вихідного відносини, а саме підмножини, отриманого шляхом видалення всіх атрибутів (доменів), які не вимагаються результуючому відношенні.

В результаті виконання операції важливим є така властивість, що в результуючому відношенні повинні бути представлені тільки унікальні атрибути (домени), що пояснюється правилом, що накладається на вихідне відношення, яке також вимагає використання унікального набору атрибутів (доменів). Его правило є принципово важливим у зв'язку з тим, що, намагаючись зробити операцію "Проекція" (рис. 1.26) на безлічі атрибутів (доменів), де є однакові атрибути (домени), неможливо визначити, який із зазначених атрибутів (доменів) повинен бути представлений в результуючому відношенні.

image27


Мал. 1.26. Приклад виконання операції "Проекція"
при наявності однакових атрибутів (доменів)

На представленому прикладі вказано два атрибути (домену) з назвою "Місто" [1] , зміст яких різниться. Спроба виконання операції "Проекція" призведе до неможливості сформувати результуюче відношення, оскільки неясно, який з атрибутів "Місто" необхідно включати в нього. Оскільки при виконанні операції "Проекція" необхідно явно вказати атрибути (домени), які необхідно включити в результуюче відношення і (або) виключити з вихідного відносини, то виконання цієї операції не представляється можливим.

Уточнимо атрибути (домени) "Місто" і виконаємо операцію "Проекція" з вимогою показати співробітників із зазначенням міста народження (рис. 1.27).

image28

Мал. 1.27. Приклад операції "Проекція" над ставленням з унікальними атрибутами (доменами)

В даному прикладі атрибути (домени) "Місто" уточнені і містять смислові слова, що призвело до поділу однакових атрибутів на два різних - "Місто народження" і "Місто проживання". В такому випадку виконання операції "Проекція" стає можливим, що призвело до формування результуючого відносини з атрибутами (доменами) "№", "ПІБ співробітника", "Місто народження".

Як і операція "Скорочення", дана операція застосовується в базах даних найбільш часто, оскільки немає необхідності в додатку виводити і обробляти повну сукупність полів використовуваних в запитах таблиць, що, звичайно, вимагає виділення тільки необхідних полів, виконавши операцію "Проекція".

  • [1] Зазначені в фігурних дужках слова позначають сенс представлених даних для відповідних атрибутів і не є елементами найменування атрибутів (доменів).
 
<<   ЗМІСТ   >>