How People Describe Themselves on Twitter · 2020-05-20 · Π FNAME, LNAME, SALARY (σ DNO=5 AND...

Post on 07-Jul-2020

1 views 0 download

Transcript of How People Describe Themselves on Twitter · 2020-05-20 · Π FNAME, LNAME, SALARY (σ DNO=5 AND...

Πληροφορική ΙΙ

1

2

Σχεσιακή Άλγεβρα

Είναι το μαθηματικό υπόβαθρο του σχεσιακού μοντέλου δεδομένων.

Αποτελεί μια θεωρητική γλώσσα που βασίζεται στη θεωρία τωνσυνόλων.

Προσφέρει ένα σύνολο πράξεων για τη διαχείριση των σχέσεων.

Ορισμένες από τις πράξεις της προέρχονται από τη θεωρία συνόλων,ενώ άλλες αναπτύχθηκαν ειδικά για τη διαχείριση σχεσιακών ΒΔ.

Η διαχείριση περιλαμβάνει την επιλογή γραμμών και στηλών οι οποίεςπληρούν κάποια συγκεκριμένα κριτήρια, τόσο από ένα απλό πίνακαόσο και από το συνδυασμό δύο ή περισσοτέρων πινάκων.

Όλες οι πράξεις της σχεσιακής άλγεβρας εφαρμόζονται πάνω σε μιασχέση ή σε δύο σχέσεις και ως αποτέλεσμα παράγουν μια άλλη σχέση.

Με τον τρόπο αυτό είναι τελικά δυνατή η πραγματοποίησηοποιασδήποτε ενέργειας, όσο πολύπλοκη και αν είναι.

Σχεσιακή Άλγεβρα

4

Σχεσιακή Άλγεβρα

• H Σχεσιακή Άλγεβρα (Relational Algebra) ορίζει ένα

σύνολο πράξεων που εφαρμόζονται σε μία ή περισσότερες

σχέσεις.

• Κάθε πράξη επιστρέφει ως αποτέλεσμα μία σχέση.

• Μία πράξη λέγεται:

– μοναδιαία (unary) αν εφαρμόζεται σε μία σχέση

– δυαδική (binary) αν εφαρμόζεται σε δύο σχέσεις.

• Είναι ένας απλός τρόπος δημιουργίας νέων σχέσεων από

υπάρχουσες.

Πράξεις Σχεσιακής Άλγεβρας (όλες)Πράξη Τύπος Χρήση

επιλογή μοναδιαία 𝜎𝜃(𝑅)

προβολή μοναδιαία Π𝛼,𝛽,𝛾(R)

καρτεσιανό γινόμενο δυαδική 𝑅1 ×𝑅2

μετονομασία μοναδιαία ρ

ένωση δυαδική 𝑅1 ∪𝑅2

διαφορά δυαδική 𝑅1 −𝑅2

τομή δυαδική 𝑅1 ∩𝑅2

φυσική σύνδεση δυαδική 𝑅1 ⋈𝑅2

διαίρεση δυαδική 𝑅1 ÷𝑅2

σύνδεση-θ δυαδική 𝑅1 ⋈𝜃𝑅2

αριστερή εξωτερική σύνδεση δυαδική 𝑅1 ⋊𝑅2

δεξιά εξωτερική σύνδεση δυαδική 𝑅1 ⋉𝑅2

αριστερή ημισύνδεση δυαδική 𝑅1 ⊳𝜃𝑅2

δεξιά ημισύνδεση δυαδική 𝑅1 ⊲𝜃𝑅2

εκχώρηση μοναδιαία Χ ← Α

Ένας πίνακας (δηλαδή μια σχέση) ορίζεται ως ένα σύνολο πλειάδων

(tuples)

Ο πίνακας διαθέτει όλες τις ιδιότητες ενός συνόλου

Οι εγγενείς πράξεις (native operators) αναφέρονται σε πλειάδες

ή στήλες:

Eπιλογή (Select), Προβολή (Project), Συνένωση ή Σύνδεση

(Join) και Διαίρεση (Division)

Οι πράξεις συνόλου (set operators) αναφέρονται σε σύνολα:

Ένωση (Union), Τομή (Intersection), Διαφορά (Difference) και

Καρτεσιανό Γινόμενο (Cartesian Product)

Πίνακες και Πράξεις Σχεσιακής Άλγεβρας

7

Μια ερώτηση εφαρμόζεται σε ένα στιγμιότυπο σχέσης

και το αποτέλεσμα της ερώτησης είναι πάλι ένα

στιγμιότυπο σχέσης

Το σχήμα της σχέσης εισόδου είναι προκαθορισμένο

Το σχήμα του αποτελέσματος είναι επίσης προκαθορισμένο

Σχεσιακή Άλγεβρα

8

Η πράξη της επιλογής (select)

σ<συνθήκη επιλογής> (<όνομα σχέσης>)

Επιλογή ενός υποσυνόλου των πλειάδων μιας σχέσηςπου ικανοποιεί μια συνθήκη επιλογής, δηλαδή έναοριζόντιο υποσύνολο της σχέσης

Επιλογή (σ)

Το σχήμα εξόδου είναι ίδιο με το σχήμα εισόδου

Η επιλογή (select) χρησιμοποιείται για την επιλογή πλειάδων που ικανοποιούν μια λογική συνθήκη (και με AND, OR, κ.λπ.).

Αριθμητικός Τελεστής Περιγραφή

= ίσο με

< μικρότερο από

> μεγαλύτερο από

≤ μικρότερο ή ίσο από

≥ μεγαλύτερο ή ίσο από

≠ διάφορο του

Επιλογή (σ)

σ<συνθήκη επιλογής> (<όνομα σχέσης>)

10

σ<συνθήκη επιλογής> (<όνομα σχέσης>)

Επιλογή ενός υποσυνόλου των πλειάδων μιας σχέσης που ικανοποιείμια συνθήκη επιλογής

=, >, <, , ,

συνδυασμένες με AND, OR, NOT

<όνομα γνωρίσματος>

<τελεστής σύγκρισης>

<όνομα γνωρίσματος> ή <σταθερή τιμή από το πεδίο ορισμού του γνωρίσματος>

προτάσεις της μορφής

<συνθήκη επιλογής>

Επιλογή (σ)

11

Παράδειγμα από το σχεσιακό μοντέλο

ΠΡΟΜΗΘΕΥΤΗΣ

ΚΩΔΙΚΟΣ

ΠΡΟΜΗΘΕΥΤΗ ΟΝΟΜΑ ΚΑΤΑΣΤΑΣΗ ΠΟΛΗ

ΦΟΡΤΩΣΗ

ΚΩΔΙΚΟΣ

ΠΡΟΜΗΘΕΥΤΗ

ΚΩΔΙΚΟΣ

ΠΡΟΙΟΝΤΟΣ ΠΟΣΟΤΗΤΑ ΗΜΕΡΟΜΗΝΙΑ

ΠΡΟΙΟΝ

ΚΩΔΙΚΟΣ

ΠΡΟΙΟΝΤΟΣ ΟΝΟΜΑ ΧΡΩΜΑ ΒΑΡΟΣ ΠΟΛΗ

Σχήμα βάσης δεδομένων

ΠΡΟΜΗΘΕΥΤΗΣ

ΚΩΔΙΚΟΣ

ΠΡΟΜΗΘΕΥΤΗ ΟΝΟΜΑ

ΚΑΤΑΣΤΑΣΗ ΠΟΛΗ

S1 ΔΟΥΚΑΣ 20 ΛΟΝΔΙΝΟ

S2 ΑΝΔΡΕΟΥ 10 ΠΑΡΙΣΙ

S3 ΦΩΤΙΟΥ 30 ΠΑΡΙΣΙ

ΠΡΟΙΟΝ

ΚΩΔΙΚΟΣ

ΠΡΟΙΟΝΤΟΣ ΟΝΟΜΑ ΧΡΩΜΑ ΒΑΡΟΣ ΠΟΛΗ

P1 ΠΑΞΙΜΑΔΙ ΚΟΚΚΙΝΟ 12 ΛΟΝΔΙΝΟ

P2 ΒΙΔΑ ΠΡΑΣΙΝΟ 17 ΠΑΡΙΣΙ

P3 ΚΑΤΣΑΒΙΔΙ ΜΠΛΕ 17 ΡΩΜΗ

P4 ΚΑΤΣΑΒΙΔΙ ΚΟΚΚΙΝΟ 14 ΛΟΝΔΙΝΟ

ΦΟΡΤΩΣΗ

ΚΩΔΙΚΟΣ

ΠΡΟΜΗΘΕΥΤΗ

ΚΩΔΙΚΟΣ

ΠΡΟΙΟΝΤΟΣ ΠΟΣΟΤΗΤΑ ΗΜΕΡΟΜΗΝΙΑ

S1 P1 300 22/8/2011

S1 P2 200 17/3/2011

S1 P3 400 14/5/2011

S2 P1 300 16/7/2011

S2 P2 400 16/7/2011

S3 P2 200 14/5/2011

12

Παραδείγματα

1. Προϊόντα με βάρος μεγαλύτερο του 15

σ ΒΑΡΟΣ> 15 (ΠΡΟΙΟΝ)

Επιλογή (σ)

ΚΩΔΙΚΟΣ ΠΡΟΙΟΝΤΟΣ ΟΝΟΜΑ ΧΡΩΜΑ ΒΑΡΟΣ ΠΟΛΗ

P2 ΒΙΔΑ ΠΡΑΣΙΝΟ 17 ΠΑΡΙΣΙ

P3 ΚΑΤΣΑΒΙΔΙ ΜΠΛΕ 17 ΡΩΜΗ

2. Προμηθευτές που εδρεύουν στο ΠΑΡΙΣΙ και έχουν κατάσταση μικρότερη του 25

σ ΠΟΛΗ=”ΠΑΡΙΣΙ” AND ΚΑΤΑΣΤΑΣΗ<25 (ΠΡΟΜΗΘΕΥΤΗΣ)

ΚΩΔΙΚΟΣ ΠΡΟΜΗΘΕΥΤΗ ΟΝΟΜΑ ΚΑΤΑΣΤΑΣΗ ΠΟΛΗ

S2 ΑΝΔΡΕΟΥ 10 ΠΑΡΙΣΙ

13

Η συνθήκη επιλογής εφαρμόζεται ανεξάρτητα σε κάθεπλειάδα

Ο τελεστής είναι μοναδιαίος

Ο βαθμός της σχέσης που προκύπτει ίδιος με τον βαθμό τηςαρχικής σχέσης

Πλήθος πλειάδων μικρότερο ή ίσο με την αρχική σχέση:ποσοστό που επιλέγονται - επιλεκτικότητα (selectivity)

Επιλογή (σ)

14

Η πράξη της προβολής (project)

Π<λίστα γνωρισμάτων> (<όνομα σχέσης>)

Επιλογή συγκεκριμένων στηλών (γνωρισμάτων),δηλαδή ένα κατακόρυφο υποσύνολο της σχέσης

Προβολή (Π)

Το σχήμα εξόδου καθορίζεται από τη λίστα γνωρισμάτων

15

Προβολή (Π)Παραδείγματα

1. Όνομα και πόλη προμηθευτή

ΠΟΝΟΜΑ, ΠΟΛΗ (ΠΡΟΜΗΘΕΥΤΗΣ)

2. Χρώμα προϊόντος

ΠΧΡΩΜΑ (ΠΡΟΙΟΝ)

ΟΝΟΜΑ ΠΟΛΗ

ΔΟΥΚΑΣ ΛΟΝΔΙΝΟ

ΑΝΔΡΕΟΥ ΠΑΡΙΣΙ

ΦΩΤΙΟΥ ΠΑΡΙΣΙ

ΧΡΩΜΑ

ΚΟΚΚΙΝΟ

ΠΡΑΣΙΝΟ

ΜΠΛΕ

Αν προκύψουν ίδιες γραμμές, τότε γίνεται απαλοιφή διπλοτύπων

(duplicate elimination)

16

Τα γνωρίσματα έχουν την ίδια διάταξη

Ο τελεστής είναι μοναδιαίος

Ο βαθμός της σχέσης είναι ίσος με τον αριθμό γνωρισμάτωνστη <λίστα γνωρισμάτων>

Πλήθος πλειάδων μικρότερο ή ίσο με την αρχική σχέση

Προβολή (Π)

17

Παράδειγμα

Τα ονόματα των προμηθευτών που εδρεύουν στο ΛΟΝΔΙΝΟ

ΠΟΝΟΜΑ=(σ ΠΟΛΗ=”ΛΟΝΔΙΝΟ” (ΠΡΟΜΗΘΕΥΤΗΣ))

Παράδειγμα Σύνθεσης Σχεσιακών Πράξεων

ΟΝΟΜΑ

ΔΟΥΚΑΣ

ΚΩΔΙΚΟΣ ΠΡΟΜΗΘΕΥΤΗ ΟΝΟΜΑ ΚΑΤΑΣΤΑΣΗ ΠΟΛΗ

S1 ΔΟΥΚΑΣ 20 ΛΟΝΔΙΝΟ

S2 ΑΝΔΡΕΟΥ 10 ΠΑΡΙΣΙ

S3 ΦΩΤΙΟΥ 30 ΠΑΡΙΣΙ

ΚΩΔΙΚΟΣ ΠΡΟΜΗΘΕΥΤΗ ΟΝΟΜΑ ΚΑΤΑΣΤΑΣΗ ΠΟΛΗ

S1 ΔΟΥΚΑΣ 20 ΛΟΝΔΙΝΟ

S2 ΑΝΔΡΕΟΥ 10 ΠΑΡΙΣΙ

S3 ΦΩΤΙΟΥ 30 ΠΑΡΙΣΙ

ΠFNAME, LNAME, SALARY (σ DNO=5 AND SALARY>25000 (EMPLOYEE) )

FNAME MINIT LNAME SSN BDATE ADDRESS SEX SALARY SUPERSSN DNO

John B Smith 123456789 09-Jan-55 731 Fondren, Houston, TX M 30000 333445555 5

Franklin T Wong 333445555 08-Dec-45 638 Vass, Houston, TX M 40000 888665555 5

Alicia J Zelaya 999887777 19-Jul-58 3321 Castle, Spring, TX F 25000 987654321 4

Jennifer S Wallace 987654321 20-Jun-31 291 Berry, Bellaire, TX F 43000 888665555 4

Ramesh K Narayan 666884444 15-Sep-52 975 Fire Oak, Humble, TX M 38000 333445555 5

Joyce A English 453453453 31-Jul-62 5631 Rice, Houston, TX F 25000 333445555 5

Ahmad V Jabbar 987987987 29-Mar-59 980 Dallas, Houston, TX M 25000 987654321 4

James E Borg 888665555 10-Nov-27 450 Stone, Houston, TX M 55000 NULL 1

Παράδειγμα Σύνθεσης Σχεσιακών Πράξεων

EMPLOYEE

ΠFNAME, LNAME, SALARY (σ DNO=5 AND SALARY>25000 (EMPLOYEE) )

FNAME MINIT LNAME SSN BDATE ADDRESS SEX SALARY SUPERSSN DNO

John B Smith 123456789 09-Jan-55 731 Fondren, Houston, TX M 30000 333445555 5

Franklin T Wong 333445555 08-Dec-45 638 Vass, Houston, TX M 40000 888665555 5

Alicia J Zelaya 999887777 19-Jul-58 3321 Castle, Spring, TX F 25000 987654321 4

Jennifer S Wallace 987654321 20-Jun-31 291 Berry, Bellaire, TX F 43000 888665555 4

Ramesh K Narayan 666884444 15-Sep-52 975 Fire Oak, Humble, TX M 38000 333445555 5

Joyce A English 453453453 31-Jul-62 5631 Rice, Houston, TX F 25000 333445555 5

Ahmad V Jabbar 987987987 29-Mar-59 980 Dallas, Houston, TX M 25000 987654321 4

James E Borg 888665555 10-Nov-27 450 Stone, Houston, TX M 55000 NULL 1

Παράδειγμα Σύνθεσης Σχεσιακών Πράξεων

ΠFNAME, LNAME, SALARY (σ DNO=5 AND SALARY>25000 (EMPLOYEE) )

FNAME MINIT LNAME SSN BDATE ADDRESS SEX SALARY SUPERSSN DNO

John B Smith 123456789 09-Jan-55 731 Fondren, Houston, TX M 30000 333445555 5

Franklin T Wong 333445555 08-Dec-45 638 Vass, Houston, TX M 40000 888665555 5

Alicia J Zelaya 999887777 19-Jul-58 3321 Castle, Spring, TX F 25000 987654321 4

Jennifer S Wallace 987654321 20-Jun-31 291 Berry, Bellaire, TX F 43000 888665555 4

Ramesh K Narayan 666884444 15-Sep-52 975 Fire Oak, Humble, TX M 38000 333445555 5

Joyce A English 453453453 31-Jul-62 5631 Rice, Houston, TX F 25000 333445555 5

Ahmad V Jabbar 987987987 29-Mar-59 980 Dallas, Houston, TX M 25000 987654321 4

James E Borg 888665555 10-Nov-27 450 Stone, Houston, TX M 55000 NULL 1

Παράδειγμα Επιλογής (σ) - Προβολής (Π)

21

Πράξεις συνόλων

1. Ένωση ()

2. Τομή ()

3. Διαφορά (-)

Πράξεις Συνόλων

Η προκύπτουσα σχέση έχει τα ίδια ονόματα γνωρισμάτωνμε την πρώτη σχέση

Συμβατότητα ως προς την ένωση

Απαλοιφή διπλότιμων

Οι πράξεις συνόλων μεταξύ σχέσεων είναι δυαδικές (binary)δηλαδή δύο σχέσεων

Ένωση, Τομή και Διαφορά

Η ένωση δύο πινάκων, R ∪ S, είναι ένας νέος πίνακας που

περιλαμβάνει όλες τις πλειάδες των δύο πινάκων, οι οποίες

μπορεί να ανήκουν μόνο στον R, μόνο στον S ή και στους δύο

πίνακες ταυτόχρονα (όχι διπλές πλειάδες).

Η τομή δύο πινάκων, R ∩ S, είναι ένας νέος πίνακας, που

περιλαμβάνει όλες τις κοινές πλειάδες από τους δύο πίνακες.

Η διαφορά των πινάκων, R – S, είναι ένας νέος πίνακας, που

περιλαμβάνει όλες τις πλειάδες που ανήκουν στον R αλλά όχι

στον S.

Ισχύουν R ∪ S = S ∪ R και R ∩ S = S ∩ R αλλά R – S S – R

• Η ένωση (union) δύο πινάκων συμβολίζεται με U.

• Ο πίνακας αποτέλεσμα περιέχει τις γραμμές και των δύο

πινάκων.

• Για να λειτουργήσει η πράξη της ένωσης πρέπει

οπωσδήποτε να ισχύουν οι εξής προϋποθέσεις:

– ο αριθμός των χαρακτηριστικών των δύο πινάκων

πρέπει να είναι ίδιος.

– τα πεδία ορισμού των αντίστοιχων χαρακτηριστικών των

δύο πινάκων πρέπει να είναι ίδια.

Ένωση Πινάκων

Ένωση (Παράδειγμα)

• Πόλεις στις υπάρχουν είτε μόνο προμηθευτές είτε

μόνο προϊόντα είτε και προμηθευτές και προϊόντα

ΠΠΟΛΗ (ΠΡΟΜΗΘΕΥΤΗΣ) U ΠΠΟΛΗ (ΠΡΟΙΟΝ)

ΠΟΛΗ

ΛΟΝΔΙΝΟ

ΠΑΡΙΣΙ

ΡΩΜΗ

Τομή Πινάκων

• Η τομή (intersection) συμβολίζεται με ∩ και επιστρέφει τις

κοινές πλειάδες των δύο πινάκων.

• Πρέπει να ισχύουν οι προϋποθέσεις συμβατότητας,

όπως στην πράξη της ένωσης.

Πστήλη(R) ∩ Πστήλη(S)

Τομή (Παράδειγμα)

• Πόλεις στις οποίες υπάρχουν και προμηθευτές και

προϊόντα

ΠΠΟΛΗ (ΠΡΟΜΗΘΕΥΤΗΣ) ∩ ΠΠΟΛΗ (ΠΡΟΙΟΝ)

ΠΟΛΗ

ΛΟΝΔΙΝΟ

ΠΑΡΙΣΙ

• Η διαφορά (difference) χρησιμοποιείται για να

απομονώσει τις γραμμές ενός πίνακα, οι οποίες

δεν ανήκουν σε κάποιον άλλο πίνακα.

• Η πράξη βασίζεται στην πράξη της διαφοράς

συνόλων και συμβολίζεται με το πρόσημο της

αφαίρεσης – .

• Γενικά ισχύει: 𝐑𝟏 ∩𝑹𝟐 =𝑹𝟏 −(𝑹𝟏 −𝑹𝟐)

Διαφορά Πινάκων

Διαφορά (Παράδειγμα)

• Πόλεις στις υπάρχουν προϊόντα αλλά δεν

υπάρχουν προμηθευτές

ΠΠΟΛΗ (ΠΡΟΙΟΝ) - ΠΠΟΛΗ (ΠΡΟΜΗΘΕΥΤΗΣ)

• Ποιο είναι το αποτέλεσμα της διαφοράς;

ΠΠΟΛΗ (ΠΡΟΜΗΘΕΥΤΗΣ) - ΠΠΟΛΗ (ΠΡΟΙΟΝ)

ΠΟΛΗ

ΡΩΜΗ

29

Α Β

1 2

1 4

2 1

6 5

σ Α > Β (X)

Π Α (X)

X

B C

2 3

2 5

1 4

Y

X Y X Y X - Y Y - X

Παραδείγματα Πράξεων

Παραδείγματα Πράξεων

Διαφορά: Σχετικό Συμπλήρωμα

(α1 , b1 , c2)

(α1 , b1 , c1)(α2 , b1 , c2)

(α1 , b2 , c3)

(α3 , b2 , c3)

Παράδειγμα INSTRUCTOR

Παραδείγματα Πράξεων

32

Οι πράξεις τις σχεσιακής άλγεβρας:

1. Πράξεις που αφαιρούν κομμάτια από μια σχέση είτεεπιλέγοντας γραμμές είτε προβάλλοντας στήλες

2. Οι συνηθισμένες πράξεις συνόλου - ένωση, τομή,διαφορά

3. Πράξεις που συνδυάζουν πλειάδες από δύο σχέσεις

Σχεσιακή Άλγεβρα

• Το καρτεσιανό γινόμενο (cartesian product) είναι δυαδική πράξη

και δίνει ως αποτέλεσμα όλους τους δυνατούς συνδυασμούς

γραμμών των δύο πινάκων.

• Είσοδος: 𝑹(𝑨𝟏,𝑨𝟐,…,𝑨𝒏) ×𝑺(𝑩𝟏,𝑩𝟐,…,𝑩𝒎 )

• Αποτέλεσμα: 𝑸(𝑨𝟏,𝑨𝟐,…,𝑨𝒏,𝑩𝟏,𝑩𝟐,…,𝑩𝒎 )

• Η σχέση Q έχει:

– 𝒏 +𝒎 χαρακτηριστικά

– 𝒏𝑹 ×𝒏𝑺πλειάδες

Καρτεσιανό Γινόμενο

34

R(A1, A2, …, An) x S(B1, B2, …, Bm)

Ονομάζεται και χιαστί γινόμενο (cross product) ή χιαστί σύνδεση (cross join)

αποτέλεσμα η σχέση Q: Q(A1, A2, …, An, B1, B2, …, Bm)

• n + m γνωρίσματα (άθροισμα στηλών)

• nR * nS πλειάδες (γινόμενο γραμμών)

Καρτεσιανό Γινόμενο

35

Α Β

1 2

3 4

B C D

2 5 6

4 7 8

9 10 11

R S

R x S

A R.B S.B C D

1 2 2 5 6

1 2 4 7 8

1 2 9 10 11

3 4 2 5 6

3 4 4 7 8

3 4 9 10 11

Καρτεσιανό Γινόμενο – Παράδειγμα (1/4)

Καρτεσιανό Γινόμενο – Παράδειγμα (2/4)

Καρτεσιανό Γινόμενο – Παράδειγμα (3/4)

Καρτεσιανό Γινόμενο – Παράδειγμα (4/4)

Σύνδεση ή Συνένωση (join) Το καρτεσιανό γινόμενο (R x S) συνήθως είναι μια πολύ

μεγαλύτερη σχέση από αυτή που χρειαζόμαστε και πρακτικά

είναι αχρείαστο.

Ορίζουμε ένα σύνολο πράξεων σύνδεσης ή συνένωσης

(join) οι οπoίες μπορούν να παραχθούν (εκφραστούν) ως

ακολουθίες πράξεων καρτεσιανού γινομένου και επιλογής,

με διάφορες παραλλαγές:

θ-σύνδεση (Theta-join)

Σύνδεση ισότητας (Equijoin)

Φυσική σύνδεση (Natural join)

Εξωτερική σύνδεση (Outer join)

Σύνδεση ή Συνένωση (join)

• Η σύνδεση ή συνένωση (join) δέχεται στην είσοδο δύο πίνακες

και δίνει ένα πίνακα στην έξοδο.

• Θεωρείται μία στήλη από κάθε πίνακα εισόδου με ίδιο πεδίο

ορισμού.

• Το σχήμα στην έξοδο αποτελείται από όλες τις στήλες των δύο

πινάκων της εισόδου.

• Οι στήλες στις οποίες γίνεται η σύνδεση εμφανίζονται μία φορά.

• Στην έξοδο παράγεται μία γραμμή για κάθε περίπτωση όπου μία

τιμή από την άλλη στήλη συγκρίνεται με μία τιμή της άλλης

στήλης.

41

Λέγεται και θήτα σύνδεση ή συνένωση (join)

R⋈ <συνθήκη σύνδεσης> S

( σ <συνθήκη σύνδεσης> (R x S) )

=, >, <, , ,

Συνθήκη συνένωσης

Ai <τελεστής σύγκρισης> Bj

όπου Ai γνώρισμα της R, Bj γνώρισμα της S και dom(Ai) = dom(Bj)

Προτάσεις της μορφής

συνδυασμένες με AND

Σύνδεση ή Συνένωση (join)

Με τον όρο θ εννοείται οποιοσδήποτε αριθμητικός τελεστής σύγκρισης (<, >,<=, >=, <>, =)

Στην έξοδο παράγεται μία γραμμή για κάθε περίπτωση όπου μία τιμή από τηνάλλη στήλη υπακούει τον τελεστή θ σε σχέση με μία τιμή της άλλης στήλης

Είναι συνδυασμός σχετιζόμενων πλειάδων

42

το αποτέλεσμα είναι οι συνδυασμοί πλειάδων που ικανοποιούντη συνθήκη

η συνθήκη αποτιμάται για κάθε συνδυασμό

το αποτέλεσμα είναι η σχέση Q με n + m γνωρίσματα

πλειάδες με τιμή null σε γνώρισμα σύνδεσης δεν εμφανίζονταιστο αποτέλεσμα

Σύνδεση ή Συνένωση

Σύνδεση θήτα – Παράδειγμα (1/3)

A D

1 ένα

2 δύο

3 τρία

5 πέντε

A B C

1 10 100

2 20 200

3 30 300

4 40 400

SR

R⋈ R.A < S.A S

R.A B C S.A D

1 10 100 2 δύο

1 10 100 2 δύο

1 10 100 5 πέντε

2 20 200 2 δύο

2 20 200 5 πέντε

3 30 300 5 πέντε

4 40 400 5 πέντε

44

B C D

2 3 4

2 3 5

7 8 10

U V

Α Β C

1 2 3

6 7 8

9 7 8

A U.B U.C V.B V.C D

1 2 3 2 3 4

1 2 3 2 3 5

1 2 3 7 8 10

6 7 8 7 8 10

9 7 8 7 8 10

U A<D AND U.BV.B V

Σύνδεση θήτα – Παράδειγμα (2/3)

U ⋈ A<D V

A U.B U.C V.B V.C D

1 2 3 7 8 10

Σύνδεση θήτα – Παράδειγμα (3/3)

CarA 20.000 Boat1 10.000

CarA 20.000 Boat2 40.000

CarA 20.000 Boat3 60.000

CarB 30.000 Boat1 10.000

CarB 30.000 Boat2 40.000

CarB 30.000 Boat3 60.000

CarC 50.000 Boat1 10.000

CarC 50.000 Boat2 40.000

CarC 50.000 Boat3 60.000

46

Συνθήκη σύνδεσης

Ai = Bj

όπου Ai γνώρισμα της R, Bj γνώρισμα της S, και dom(Ai) = dom(Bj)

Προτάσεις της μορφής

συνδυασμένες με AND

Σύνδεση Ισότητας (equijoin)

Εάν η συνθήκη επιλογής είναι ισότητα =, τότε η σύνδεσηονομάζεται σύνδεση ισότητας (equijoin) και το χαρακτηριστικότης είναι ότι έχει δύο πεδία που εμφανίζουν ίδια τιμή

47

Α Β

1 2

3 4

B C D

2 5 6

4 7 8

9 10 11

R S

A R.B S.B C D

1 2 2 5 6

3 4 4 7 8

R SR.Β =S.Β

Σύνδεση Ισότητας – Παράδειγμα (1/2)

Σύνδεση Ισότητας – Παράδειγμα (2/2)

Φυσική Σύνδεση (natural join) Εάν οι δύο προς σύνδεση σχέσεις έχουν ένα κοινό πεδίο και η

σύνδεση γίνεται επ’ αυτού, τότε ονομάζεται φυσική σύνδεση (natural

join) και συμβολίζεται με ⋈ (π.χ. πρωτεύον κλειδί – εξωτερικό κλειδί).

Η φυσική σύνδεση (natural join) δέχεται στην είσοδο δύο πίνακες

και δίνει ένα πίνακα στην έξοδο.

Θεωρείται μία στήλη από κάθε πίνακα εισόδου με ίδιο πεδίο

ορισμού.

Το σχήμα στην έξοδο αποτελείται από όλες τις στήλες των δύο

πινάκων της εισόδου.

Οι στήλες επί των οποίων γίνεται η σύνδεση εμφανίζονται μία φορά.

Στην έξοδο παράγεται μία γραμμή για κάθε περίπτωση όπου μία τιμή

από την άλλη στήλη ισούται με μία τιμή της άλλης στήλης.

Η φυσική σύνδεση είναι πράξη σύνδεσης ισότητας, της οποίας το

αποτέλεσμα περιέχει μόνο το κοινό πεδίο (το αριστερό).

50

συνένωση ισότητας όπου παραλείπουμε το γνώρισμα της δεύτερης σχέσης από το αποτέλεσμα

όταν διαφορετικό όνομα - μετονομασία

R ⋈ (λίστα1, λίστα2) S

επιλεκτικότητα σύνδεσης: μέγεθος αποτελέσματος / (nr * ns)

Φυσική Σύνδεση (natural join)

τα κοινά γνωρίσματα εμφανίζονται μόνο μια φορά

Φυσική Σύνδεση – Παράδειγμα (1/4)

A D

1 ένα

2 δύο

3 τρία

5 πέντε

A B C

1 10 100

2 20 200

3 30 300

4 40 400

A B C D

1 10 100 ένα

2 20 200 δύο

3 30 300 τρία

SR

𝑹 ⋈ S

52

Α Β

1 2

3 4

B C D

2 5 6

4 7 8

9 10 11

R S R ⋈ S

A B C D

1 2 5 6

3 4 7 8

Φυσική Σύνδεση – Παράδειγμα (2/4)

53

B C D

2 3 4

2 3 5

7 8 10

U V

Α Β C

1 2 3

6 7 8

9 7 8

U⋈V

A B C D

1 2 3 4

1 2 3 5

6 7 8 10

9 7 8 10

Φυσική Σύνδεση – Παράδειγμα (3/4)

54

Α Β

1 2

1 4

2 1

6 5

R

B C

2 3

2 5

1 4

S

R ⋈ Α >= Β S

R⋈Α = Β S

Φυσική Σύνδεση – Παράδειγμα (4/4)

R x S

55

Παράδειγμα από το σχεσιακό μοντέλο

ΚΩΔΙΚΟΣ

ΠΡΟΜΗΘΕΥΤΗΟΝΟΜΑ

ΚΑΤΑΣΤΑΣΗ ΠΟΛΗ

S1 ΔΟΥΚΑΣ 20 ΛΟΝΔΙΝΟ

S2 ΑΝΔΡΕΟΥ 10 ΠΑΡΙΣΙ

S3 ΦΩΤΙΟΥ 30 ΠΑΡΙΣΙ

ΚΩΔΙΚΟΣ

ΠΡΟΙΟΝΤΟΣΟΝΟΜΑ ΧΡΩΜΑ ΒΑΡΟΣ ΠΟΛΗ

P1 ΠΑΞΙΜΑΔΙ ΚΟΚΚΙΝΟ 12 ΛΟΝΔΙΝΟ

P2 ΒΙΔΑ ΠΡΑΣΙΝΟ 17 ΠΑΡΙΣΙ

P3 ΚΑΤΣΑΒΙΔΙ ΜΠΛΕ 17 ΡΩΜΗ

P4 ΚΑΤΣΑΒΙΔΙ ΚΟΚΚΙΝΟ 14 ΛΟΝΔΙΝΟ

ΠΡΟΜΗΘΕΥΤΗΣ ΠΡΟΙΟΝ

ΠΡΟΜΗΘΕΥΤΗΣ ⋈ΠΡΟΜΗΘΕΥΤΗΣ.ΠΟΛΗ=ΠΡΟΙΟΝ.ΠΟΛΗ ΠΡΟΙΟΝ

ΚΩΔΙΚΟΣ

ΠΡΟΜΗΘΕΥΤΗΟΝΟΜΑ

ΚΑΤΑΣΤΑΣΗ ΠΟΛΗ

S1 ΔΟΥΚΑΣ 20 ΛΟΝΔΙΝΟS1 ΔΟΥΚΑΣ 20 ΛΟΝΔΙΝΟS2 ΑΝΔΡΕΟΥ 10 ΠΑΡΙΣΙ

S3 ΦΩΤΙΟΥ 30 ΠΑΡΙΣΙ

ΚΩΔΙΚΟΣ

ΠΡΟΙΟΝΤΟΣΟΝΟΜΑ ΧΡΩΜΑ ΒΑΡΟΣ

P1 ΠΑΞΙΜΑΔΙ ΚΟΚΚΙΝΟ 12

P4 ΚΑΤΣΑΒΙΔΙ ΚΟΚΚΙΝΟ 14P2 ΒΙΔΑ ΠΡΑΣΙΝΟ 17P2 ΒΙΔΑ ΠΡΑΣΙΝΟ 17

56

Σχεσιακή άλγεβρα –ένα σύνολο τελεστών που εφαρμόζονται πάνω σε σχέσεις (πίνακες) και έχουν ως αποτέλεσμα σχέσεις

επιλογή (σ)

προβολή (Π)

ένωση ()

τομή ()

διαφορά (-)

καρτεσιανό γινόμενο (x)

Σύνδεση (⋈)

σύνδεση ισότητας (⋈)

φυσική σύνδεση (⋈)

Σχεσιακή Άλγεβρα

57

Ερωτήσεις;