WSiP7

WSiP7




PODSTAWY JĘZYKA SQL

13.3. Złączenie

Złączenie służy do pobierania danych z dwóch lub większej liczby tabel w celu porównania lub zestawienia. W tabelach biorących udział w złączeniu muszą występować kolumny, które są zgodne i spełniają warunki pozwalające na dokonanie złączenia. Zaleca się, aby kolumny te łączyły dwie relacje (tabele) na zasadzie: klucz podstawowy, klucz obcy, chociaż warunek ten nie jest niezbędny do wykonania złączenia.

PRZYKŁAD 13.3

Dla przykładu wykorzystamy dwie tabele: zawodnicy i pokoje.

Zawodnicy    Pokoje

nr

[PK] integer

imię

character varying(50)

wiek

integer

id_pokoju [PK] integer

cena_za_dobe

integer

id_goscia

integer

i

Janek

12

1

50

1

2

Marek

15

2

50

2

3

Heniek

22

3

70

3

4

Kornel

34

4

20

4

5

Wojtek

25

5

10

5

6

Tadeusz

43

6

23

6

Rys. 13.5. Tabele wykorzystane w złączeniu

Gdy założymy, że numer gościa (kolumna id_goscia) odpowiada* numerowi zawodnika (kolumnie nr), wówczas, chcąc otrzymać zestawienie imienia zawodnika oraz ceny, którą ma zapłacić za pokój, wykonujemy złączenie: SELECT imię,

cena_za

dobę FROM zawodnicy JOIN pokoje

ON nr=id gościa:

nojabaza=#

SELECT imię, cena_za_dobe FROM zawodnicy JOIN cena_za_dobe

pokoje ON nr=id_goscia;

imię |

Marek

60

Janek

50

Heniek

70

Kornel

20

Wojtek

10

Tadeusz (6 wierszy)

23

Rys. 13.6. Wynik złączenia tabel w PostgreSQL

A oto przykład operacji równozłączenia zapisany językiem algebry relacji:

imię (ZAWODNICY)) ^ zawodnicy.id = pokoje.id_pokoju    cena_za_dobe(POKOjE))

Operator złączenia


Znak równości determinujący typ złączenia - równozłączenie


Rys. 13.7. Równozłączenie przedstawione z użyciem operatora algebry relacyjnej

Stąd zalecenie określające, że pomiędzy tabelami powinien występować związek: klucz podstawowy, klucz obcy.


Wyszukiwarka

Podobne podstrony:
WSiP7 PODSTAWY BAZ DANYCH Dlatego w relacyjnych bazach danych relacją nazywać będziemy tabele bazy
WSiP7 PODSTAWY BAZ DANYCH 37 PRZYKŁAD 9.3 Prześledźmy tę teorię, posługując się przykładem:A
scanW0 Konto 501, 502, 503 „Koszty działalności podstawowej” Konto 501, 502, 503 służy do ewidencji
IMAG0771 (2) 32 Laboratorium z podstaw badań ultradźwiękowych 6.3.2 Wzorzec W2 Służy do podobnycłi c
DSCN4206 Zastosowanie alkoholi Metanol - podstawowy półprodukt wielkiej syntezy organicznej. Służy d
Bezprzewodowe sieci LAN jest to elastyczny system komunikacyjny który służy do wymiany danych pomięd
CDTrack Rescue służy do odzyskiwanie danych z dysków CD i DVD. Producentem tego oprogramowanie jest
6. SKALE POMIAROWE Skala porządkowa - służy, do porządkowania danych. Pomiar polega na grupowaniu
Scan0055 (8) 21) Pamięć operacyjna ROM charakteryzuje to, że: a) służy do przechowywania danych i pr
img28 Operator wywołania Służy do uruchamiania zewnętrznych programów lub poleceń powłoki (Linux/Uni
Który rekord serwera DNS służy do opisu hosta? Tylko A (®) A lub AAAA Tylko AAAA PTR
Model danych ■    Spójny zestaw pojęć, który służy do opisywania danych i

więcej podobnych podstron