39663 ullman102 (2)

39663 ullman102 (2)



210 4. DZIAŁANIA W MODELU RELACYJNYM

Inny przykład zastosowania rzutowania polega na obliczeniu wyrażenia Otrzymujemy wówczas relację o jednej kolumnie:

czyKolor

prawda

W wynikowej relacji występuje tylko jedna krótkie ponieważ na rys. 4.2 wszystkie trzy krotki mają taką samą wartość składowej dla atrybutu czyKolor.

4.1.3. Selekcja

W wyniku zastosowania operatora selekcji do relacji R powstaje nowa relacja, do której należy pewien podzbiór krotek relacji R. Krotki w relacji wynikowej są wybierane według kryterium określonego przez pewien warunek C narzucony na atrybuty relacji R. Tę operację oznaczamy symbolem a\(R). Schemat relacji wynikowej nie różni się niczym od schematu relacji R, a porządek atrybutów zostaje też zachowany.

C stanowi wyrażenie warunkowe tworzone podobnie do wyrażeń warunkowych w językach programowania, na przykład tych, które występują po słowie Tf w konwencjonalnych językach programowania, takich jak Pascal lub C. Jedyna różnica polega na tym, że w wyrażeniu algebraicznym operan-dami mogą być tylko albo stałe, albo atry buty relacji R. Wartość wyrażenia C jest obliczana po kolei dla każdej krotki t z R w ten sposób, że w miejsce atrybutu w C podstawia się wartość składowej krotki / dla tego atrybutu. Jeśli po zastąpieniu wszystkich atrybutów odpowiednimi wartościami z krotki wyrażenie przyjmuje wartość prawda, to wówczas krotka / jest dołączana do wynikowego zbioru operacji ot{R), w przeciwnym przypadku krotka t nie będzie należała do relacji wynikowej.

PRZYKŁAD 4.3

Załóżmy, że relacja Film wygląda tak jak na rys. 4.2. Wówczas wartością wyrażenia <Jdiu&ons iooOlim) jest następująca relacja:

muł

rok

długość

czyKolor

nazwaStudia

producentem

Gwiezdne Wojny

1977

124

prawda

Fox

12345

Potężne Kaczory

1991

104

prawda

Disney

67890

Warunek długość > 100 jest spełniony przez pierwszą krotkę, ponieważ gdy zamiast nazwy długość wstaw imy 124, co jest wartością składow ej atry butu długość z. pierwszej krotki, otrzymamy nierówność 124 > 100, co jest prawdą. Możemy zatem umieścić pierwszą krotkę w zbiorze wynikowym. W ten sam sposób należy tłumaczyć, dlaczego druga krotka z rys. 4.2 także została tam umieszczona.

W trzeciej krotce wartość składowej dla atrybutu długość wynosi 95. Jeśli podstawimy tę wartość zamiast nazwy długość do warunku, to otrzymamy wyrażenie 95 > 100, które jest nieprawdziwe. Dlatego ostatnia krotka z rys. 4.2 nie jest wynikiem.

PRZYKŁAD 4.4

Chcemy teraz wyszukać te krotki relacji:

Filmttytuł, rok, długość, czyKolor, nazwaStudia, produ-centC#)

w których producentem jest wytwórnia Fox i które trwają co najmniej 100 minut. Wówczas trzeba utworzyć warunek bardziej złożony, do którego należą dwa warunki połączone spójnikiem logicznym AND. Wyrażenie to przyjmie następującą postać:

&,tluy,u.\ć Ł 100 AMD na^aStudio - rox(Film)

Jedynie krotka:

tytuł

rok

długość

cz\’Kolor

nazwaStudia

producentem

Gwiezdne Wojny

1977

124

prawda

r o x

12345

występuje w relacji wynikowej.

4.1.4. Iloczyn kartezjański

Iloczynem kartezjańskim (lub produktem) zbiorów R i S nazywa się zbiór wszystkich par uporządkowanych, z których pierwszy element pary należy do zbioru R, a drugi do zbioru S. Taki iloczyn oznacza się symbolem R x S. Definicja nie zmienia się, gdy zbiorami są relacje. Jednak ponieważ elementami R i S są w takim przypadku krotki, w których może występować wiele składowych, więc w wyniku utworzenia pary krotek z jednej krotki S i jednej otrzymuje się nową, dłuższą krotkę, która zaw iera wszystkie składowe z krotek, które wchodzą w skład pary. W wynikowej krotce wszystkie składowe z. krotki R występują przed składowymi krotki z S.

Schemat relacji wynikowej jest sumą schematów relacji R i S. Ale jeśli zdarzy się tak, żc pewne atrybuty powtarzają się w obu schematach, to co najmniej dla jednego z powtarzających się atrybutów' trzeba wprowadzić nową nazwę. Aby odróżniać identyczne atrybuty A z relacji R i S. wprowadza się oznaczenie SA dla atrybutu A w relacji S oraz RA dla atrybutu A w relacji R.


Wyszukiwarka

Podobne podstrony:
18906 ullman104 (2) 214 1 DZIAŁANIA W MODELU RELACYJNYM Jedynym wspólnym atrybutem obu relacji S i R
ullman103 (2) 212 4. DZIAŁANIA W MODELU RELACYJNYM A B 1 2 3 4 Relacja
ullman136 (2) ■1 DZIAŁANIA W MODELU RELACYJNYM 1.    Wstawianie krotek do relacji 2.
50337 ullman111 (2) 4 DZIAŁANIA W MODELU RELACYJNYM łach zapisuje się na przykład, że jeśli w pewnej
12165 ullman122 (2) 1 1 -. V 4 DZIAŁANIA W MODELU RELACYJNYM Następne przetwarzanie nic powoduje juz
ullman100 (2) 4______Działania w modelu relacyjnym W bieżącym rozdziale przedstawimy bazy danych z p
ullman101 (2) 208 •i DZIAŁANIA W MODELU RELACYJNYM to, że zbiór R - S jest różny od zbioru S - R. Te
53493 ullman117 (2) 4 DZIAŁANIA W MODELU RELACYJNYM A teraz można wprowadzić spójnik NOT do porównan
37648 ullman116 (2) 4 DZIAŁANIA W MODELU RELACYJNYM4.3.5. Selekcja Operacja selekcji jest w przypadk

więcej podobnych podstron