208 •i DZIAŁANIA W MODELU RELACYJNYM
to, że zbiór R - S jest różny od zbioru S - R. Ten drugi zawiera tylko te elementy zbioru S, które nie należą do zbioru R.
Relacje R i S, do których można zastosować operacje teoriomnogościo-we, muszą spełniać następujące warunki:
1. Schematy relacji R i S muszą mieć identyczne zbiory atrybutów.
2. Zanim zostanie obliczona tcoriomnogościowa suma, przecięcie lub różnica zbiorów krotek, należy uporządkować atrybuty relacji R i S w ten sposób, aby w obu relacjach kolejność atrybutów była taka sama.
Może się zdarzyć czasem, że trzeba utworzyć sumę, przecięcie lub różnicę relacji, które mają taką samą liczbę atrybutów, ale różniących się ich nazwami. Jeśli tak się zdarzy, to można skorzystać z operatora przemianowania, który omówiono w p. 4.1.8, i dzięki temu zmienić schemat jednej lub obu relacji w taki sposób, aby ich zbiór atrybutów był taki sam.
PRZYKŁAD 4.1
Niech będą dane dwie relacje R i S, które są instancjami relacji Gwi azćafil-mowa z podrozdziału 3.9. Te instancje R i S przedstawiono na rys. 4.1.
nazwisko |
adres |
płeć |
dataUrodzenia |
Carr.ie Fisher |
123 Mapie St., Hollywood |
F |
9/9/99 |
Mark Homiil |
456 Oak Rd., Brentwcod |
M |
8/8/88 |
Relacja R
nazwisko |
adres |
płeć |
dataUrodzenia |
Carrie Fisher |
123 Mapie Sz., Hollywood |
F |
9/9/99 |
Harrison Ford |
789 Palm. Dr., |
M |
7/7/77 |
3everiy Hilis |
Relacja 5'
RYSUNEK 4.1 Dwie relacje
Sumą tych dwóch relacji jest poniższa nowa relacja:
nazwisko |
adres |
płeć |
dataUrodzenia |
Carrie Fisher |
123 Mapie St., Hollywood |
K |
9/9/99 |
Mark Kamili |
456 Oak Rd., Brentwood |
M |
8/8/88 |
Harrison Ford |
789 Palm Dr., Boverly Hi 1is |
M |
7/7/77 |
Zauważmy, że krotka dotycząca Carrie Fisher, która występuje w obu relacjach wejściowych, w wyniku pojawia się tylko jeden raz.
Przecięciem R i 6’jest poniższa relacja:
nazwisko |
adres |
płeć |
dataUrodzenia | |
Carrie Fisher |
123 Mapie St., |
Holiywood |
K |
9/9/99 |
Tutaj występuje tylko krotka z Carrie Fisher, ponieważ tylko ta krotka występuje w obu relacjach: R i S.
Różnica R - Sjest następująca:
nazwisko |
adres |
płeć |
dataUrodzenia |
Mark Hamill |
456 Oak Rei., Brentwood |
M |
S/8/88 |
Krotki z opisem gwiazd Fisher i Hamill występują w R, a zatem są potencjalnymi kandydatami dla R - S. Jednakże, ponieważ krotka Fisher występuje również w S, więc nie ma jej w różnicy R - S.
□
Z operatora rzutowania korzysta się przy tworzeniu nowej relacji, która powstaje z relacji R przez usunięcie z niej pewnych kolumn. Wartością wyrażenia
Ka\m.....An(R) jest relacja, która powstaje z R przez przepisanie wszystkich atiy-
butów ,An. W wyniku powstaje schemat obejmujący zadany zbiór atry
butów {A\, Ai, ...,An), występujących w takim porządku, w jakim je zadano.
tytuł |
rok |
długość |
czy-Kolor |
nazwaSludia |
producentem |
Gwiezdne Wojny |
1977 |
124 |
kolor |
Fox |
12345 |
Potężne Kaczory |
1991 |
104 |
kolor |
Disney |
67890 |
Świat Wayne'a |
1992 |
95 |
kolor |
Paramount |
99999 |
RYSUNKK 4.2 Relacja Filral
PRZYKŁAD 4.2
Rozważmy relację Fi Im, której schemat został opisany w podrozdziale 3.9. Instancję tej relacji pokazano na rys. 4.2. Wyrażenie:
tttytuł, rok, dhigośći. • i lm)
opisuje operację rzutowania relacji Film na pierwsze trzy atrybuty.
W wyniku tej operacji powstaje następująca relacja:
tytuł |
rok |
długość |
Gwiezdne wojny |
1977 |
124 |
Potężne Kaczory |
1991 |
104 |
świat Wayne'a |
1992 |
95 |