Σχεσιακή Άλγεβρα Προβολή, Επιλογή, Καρτεσιανό Γινόμενο, Ένωση, Διαφορά, Σύνθεση Τελεστών, Μετονομασία, Παραδείγματα Ερωτήσεων, Τομή Συνόλων, Φυσική Σύζευξη 1
Σχεσιακή Άλγεβρα Η σχεσιακή άλγεβρα (relational algebra) είναι η μαθηματική θεμελίωση των πράξεων του σχεσιακού μοντέλου δεδομένων, και ειδικότερα της γλώσσας επερωτήσεων SQL 2
Τελεστής Προβολής Ο τελεστής προβολής προβάλει συγκεκριμένα γνωρίσματα (στήλες) από µία σχέση. Συμβολίζεται µε το κεφαλαίο ελληνικό γράμμα Πι (Π). Συμβολισμός Π Α1,Α2,, Αk (r) όπου Α1, Α2 είναι ονόματα γνωρισμάτων και r είναι το όνομα της σχέσης. Οι διπλές γραμμές (διπλότυπα) διαγράφονται από το αποτέλεσμα επειδή οι σχέσεις είναι σύνολα. 3
Τελεστής Προβολής - Παράδειγμα Π Πόλη, Εξάμηνο (Φοιτητές) 4
Τελεστής Επιλογής Ο τελεστή Επιλογής επιλέγει πλειάδες με βάση κάποια κριτήρια. Συμβολίζεται µε το μικρό ελληνικό γράμμα σίγμα (σ) Συμβολισμός: σ p (r) Ορίζεται ως: σ p (r)= {t t Є r and p(t)} επιστρέφει εκείνες τις πλειάδες (συστοιχίες) της σχέσης r που ικανοποιούν το P (κατηγόρημα) το οποίο αποτελείται από µία ή περισσότερες συνθήκες επιλογής πλειάδων που συνδέονται µε τους λογικούς τελεστές: and, or, not. Οι τελεστές σύγκρισης στις συνθήκες επιλογής είναι οι =,, <,, >, <γνώρισμα> τελεστής <γνώρισμα> ή <σταθερά> Παράδειγμα επιλογής: σ πόλη-πελάτη= Σέρρες (Πελάτες) 5
Τελεστής Επιλογής - Παράδειγμα σ Πόλη= Αθήνα (Φοιτητές) 6
Τελεστής Καρτεσιανού Γινομένου Ο τελεστής του καρτεσιανού γινομένου συμβολίζεται µε x Ορισμός: έστω σχέσεις r και s, όπου r έχει n πλειάδες και s έχει m πλειάδες. Το καρτεσιανό γινόμενο r x s θα έχει: n x m πλειάδες 7
Τελεστής Καρτεσιανού Γινομένου - Παράδειγμα 8
Τελεστής Καρτεσιανού Γινομένου - Παράδειγμα Φοιτητές χ Μαθήματα 9
Τελεστής Ένωσης Συμβολισμός: r s Ορίζεται ως: r s= {t t Є r ή t Є s} Για να είναι έγκυρη η r s: 1. Οι σχέσεις r, s πρέπει να έχουν τον ίδιο αριθμό γνωρισμάτων (βαθμό) 2. Τα πεδία ορισμού πρέπει να είναι συμβατά (π.χ., η 2η στήλη του r να χρησιμοποιεί τον ίδιο τύπο τιμών όπως και η δεύτερη στήλη του s) Π.χ. βρείτε τα ονόματα πελατών µε λογαριασμό ή δάνειο Π όνοµα (καταθέτης) Π όνοµα ( ανειζόµενος) 10
Τελεστής Ένωσης - Παράδειγμα 11
Τελεστής Ένωσης - Παράδειγμα ΦοιτητέςΠληροφορικής ΦοιτητέςΓεωπληροφορικής 12
Τελεστής Διαφοράς Συμβολισμός r-s Ορίζεται ως: r-s = {t t Є r και t Є s} Οι διαφορές συνόλων πρέπει να χρησιμοποιηθούν μεταξύ συμβατών σχέσεων. 13
Τελεστής Διαφοράς - Παράδειγμα 14
Τελεστής Διαφοράς - Παράδειγμα ΦοιτητέςΠληροφορικήςΓεωπληροφορικής - ΦοιτητέςΓεωπληροφορικής 15
Σύνθεση Τελεστών Μπορούν να δημιουργηθούν εκφράσεις χρησιμοποιώντας πολλαπλούς τελεστές π.χ. σ A=Γ (r x s) r x s σ Α=Γ (r x s) Α Β Γ Δ Ε α 1 α 10 c α 1 β 10 c α 1 β 20 b α 1 r 10 b β 2 α 10 c β 2 β 10 c β 2 β 20 b β 2 r 10 b Α Β Γ Δ Ε α 1 α 10 c β 2 β 10 c β 2 β 20 b 16
Τελεστής Μετονομασίας Ο τελεστής μετονομασίας συμβολίζεται µε το μικρό ελληνικό γράμμα ρ. Μας επιτρέπει να ονομάσουμε, και συνεπώς να αναφερθούμε, στα αποτελέσματα των εκφράσεων της σχεσιακής άλγεβρας. Μας επιτρέπει να αναφερθούμε σε μια σχέση με περισσότερα από ένα ονόματα Παράδειγµα: ρ x (r) επιστρέφει την έκφραση r µε το νέο όνομα Χ Παράδειγμα υλοποίησης στην SQL: SELECT* FROM R AS X Αν μια έκφραση της άλγεβρας Ε έχει βαθμό n, τότε η ρ χ(α1, Α2,, Αn) (r) επιστρέφει το αποτέλεσμα της έκφρασης r µε το όνομα Χ, και µε τις ιδιότητες μετονοµασµένες σε Α1, Α2,, Αn. 17
Παράδειγμα Τραπέζης 18
Καταθέτης όνομα-πελάτη Hayes A-102 Johnson A-101 Johnson A-201 Jones A-217 Lindsay A-222 Smith A-215 Turner A-305 Δανειζόμενος όνομα-πελάτη Adams L-16 Curry L-93 Hayes L-15 Jackson L-14 Jones L-17 Smith L-11 Smith L-23 Williams L-17 Δάνειο αριθμόςλογαριασμού αριθμόςδανείου αριθμόςδανείου όνομαυποκαταστήμ ατος ποσό L-11 Round-Hill 900 L-14 Downtown 1500 L-15 Perryridge 1500 L-16 Perryridge 1300 L-17 Downtown 1000 L-23 Redwood 2000 L-93 Mianus 500 19
Παραδείγματα Ερωτήσεων Βρείτε όλα τα δάνεια άνω των 1200. σ ποσό> 1200 (δάνειο) Βρείτε τον αριθμό δανείου για κάθε δάνειο ενός ποσού μεγαλύτερου από 1200. Π αριθµός-δανείου (σ ποσό>1200 (δάνειο)) Βρείτε τα ονόματα όλων των πελατών που έχουν ένα δάνειο, έναν λογαριασμό ή και τα δύο, από την τράπεζα Π όνοµα-πελάτη ( ανειζόµενος) Π όνοµα-πελάτη (καταθέτης) Βρείτε τα ονόματα όλων των πελατών που έχουν ένα δάνειο και έναν λογαριασμό στην τράπεζα. Π όνοµα-πελάτη ( ανειζόµενος) Π όνοµα-πελάτη (καταθέτης) 20
Παραδείγματα Ερωτήσεων Βρείτε τα ονόματα όλων των πελατών που έχουν ένα δάνειο στο υποκατάστημα Κρήνης Π όνοµα-πελάτη (σ όνοµα-υποκαταστήματος= Κρήνης (σ ανειζόµενος.αριθµός-δανείου= άνειο.αριθµός-δανείου ( ανειζόµενος x άνειο))) Βρείτε τα ονόματα όλων των πελατών που έχουν ένα δάνειο στο υποκατάστημα Κρήνης αλλά δεν έχουν λογαριασμό σε κανένα υποκατάστημα της τράπεζας. Π όνοµα-πελάτη (σ όνοµα-υποκαταστήµατος ="Κρήνης" (σ ανειζόµενος.αριθµός-δανείου= άνειο.αριθµός-δανείου ( ανειζόµενος x άνειο))) Π όνοµα-πελάτη (λογαριασµός) Βρείτε τα ονόματα όλων των πελατών που έχουν ένα δάνειο στο υποκατάστημα Βενιζέλου Π όνοµα-πελάτη (σ όνοµα-υποκαταστήµατος="βενιζέλου" (σ ανειζόµενος.αριθµός-δανείου= άνειο.αριθµός-δανείου ( ανειζόµενος x άνειο) ) ) 21
Τελεστής Τομής Συνόλων Συμβολισμός: r s Ορίζεται ως: r s= {t t Є r και t Є s} Για να είναι έγκυρη η r s. η r, s πρέπει να έχουν τον ίδιο αριθμό γνωρισμάτων (βαθµό) Τα πεδία ορισμού πρέπει να είναι συμβατά Σημειώστε: r s = r -(r -s) 22
Τελεστής Τομής - Παράδειγμα Οι σχέσεις r, s Α Β α 1 α 2 β 1 Α Β α 2 β 3 Η τομή r s Α Β α 2 23
Τελεστής Φυσικής Σύζευξης Συμβολισμός: r s η φυσική σύζευξη (συνένωση) συνδυάζει το καρτεσιανό γινόμενο και την επιλογή σε µία πράξη. Επιλέγει τις συστοιχίες του καρτεσιανού γινομένου των δύο σχέσεων (r x s) για τις οποίες ισχύει η ισότητα στις τιμές εκείνων των γνωρισμάτων που είναι κοινά και στις δύο σχέσεις. Τα διπλότυπα απαλείφονται όπως και στις άλλες σχεσιακές πράξεις. Παράδειγμα: R = (Α, Β, Γ, ) S= (Ε, Β, ) Το σχήμα του αποτελέσματος είναι (Α, Β, Γ,, Ε) r s ορίζεται ως: Π r.a,r.b,r.γ,r.,s.ε (σ r.β=s.b r. =s. (r x s)) 24
Τελεστής Φυσικής Σύζευξης ΒΗΜΑ 1: Υπολογίζουμε το καρτεσιανό γινόμενο των δυο πινάκων r x s ΒΗΜΑ 2: Επάνω στο καρτεσιανό γινόμενο κάνουμε επιλογή στα κοινά γνωρίσματα σ r.β=s.b r. =s. (r x s) ΒΗΜΑ3: Προβολή (θέλουμε τα κοινά γνωρίσματα να υπάρχουν μόνο μια φορά R S= ένωση των γνωρισμάτων) Π R S (σ r.β=s.b r. =s. (r x s)) 25
Παράδειγμα Τελεστή Φυσικής Σύζευξης Οι σχέσεις r, s Α Β Γ Δ α 1 α κ β 2 γ κ γ 4 β λ α 1 γ κ δ 2 β λ Β Δ Ε 1 κ α 3 κ β 1 κ γ 2 λ δ 3 λ ε r s Α Β Γ Δ Ε α 1 α κ α α 1 α κ γ α 1 γ κ α α 1 γ κ γ δ 2 β λ δ 26