Δρ. Παναγιώτης Συμεωνίδης 7 Σχεσιακή Άλγεβρα Δρ. Παναγιώτης Συμεωνίδης
Κεφάλαιο 7: Σχεσιακή Άλγεβρα Σχεσιακή Άλγεβρα H Σχεσιακή Άλγεβρα (relational algebra) ορίζει ένα σύνολο πράξεων που εφαρμόζονται σε μία ή περισσότερες σχέσεις. Μία πράξη λέγεται: μοναδιαία (unary) αν εφαρμόζεται σε μία σχέση, ή δυαδική (binary) αν εφαρμόζεται σε δύο σχέσεις. Κάθε πράξη επιστρέφει ως αποτέλεσμα μία σχέση.
Πράξεις της σχεσιακής άλγεβρας Κεφάλαιο 7: Σχεσιακή Άλγεβρα Πράξεις της σχεσιακής άλγεβρας
Κεφάλαιο 7: Σχεσιακή Άλγεβρα Επιλογή (Select) Χρησιμοποιείται για την επιλογή πλειάδων που ικανοποιούν μια λογική συνθήκη (με AND, OR κλπ).
Επιλογή (Select) - παραδείγματα Κεφάλαιο 7: Σχεσιακή Άλγεβρα Επιλογή (Select) - παραδείγματα «Βρες τα στοιχεία του συνδρομητή με κωδικός = 12». «Ποιές γνωστικές περιοχές έχουν λιγότερους από 5 ή περισσότερους από 50 συνδρομητές ?».
Κεφάλαιο 7: Σχεσιακή Άλγεβρα Προβολή (Project) Χρησιμοποιείται για να απομονώσουμε συγκεκριμένες στήλες ενός πίνακα. «Βρες τα χαρακτηριστικά όνομα και τηλέφωνο για όλες τις γραμμές του πίνακα Συνδρομητής».
Προβολή (Project) - παραδείγματα Κεφάλαιο 7: Σχεσιακή Άλγεβρα Προβολή (Project) - παραδείγματα «Βρες το όνομα και το τηλέφωνο των Συνδρομητών με κωδικό μεγαλύτερο του 20». Αν προκύψουν ίδιες γραμμές, τότε πρέπει να γίνει απαλοιφή διπλοτύπων (duplicate elimination).
Καρτεσιανό Γινόμενο (Cartesian Product) Κεφάλαιο 7: Σχεσιακή Άλγεβρα Καρτεσιανό Γινόμενο (Cartesian Product) Είναι δυαδική πράξη και δίνει ως αποτέλεσμα όλους τους δυνατούς συνδυασμούς γραμμών των δύο πινάκων. Η σχέση αποτέλεσμα έχει: n + m χαρακτηριστικά nR x nS πλειάδες
Καρτεσιανό Γινόμενο - παράδειγμα Κεφάλαιο 7: Σχεσιακή Άλγεβρα Καρτεσιανό Γινόμενο - παράδειγμα
Καρτεσιανό Γινόμενο - παράδειγμα Κεφάλαιο 7: Σχεσιακή Άλγεβρα Καρτεσιανό Γινόμενο - παράδειγμα «Βρες όλους τους δυνατούς συνδυασμούς μεταξύ συνδρομητών και γνωστικών περιοχών». Ο τελικός πίνακας να έχει ως χαρακτηριστικά τα κλειδιά των πινάκων, όνομα του συνδρομητή και τον τίτλο της γνωστικής περιοχής.
Κεφάλαιο 7: Σχεσιακή Άλγεβρα Ένωση (Union) Η ένωση δύο πινάκων συμβολίζεται με U. Ο πίνακας αποτέλεσμα περιέχει τις γραμμές και των δύο πινάκων. Για να λειτουργήσει η πράξη της ένωσης πρέπει οπωσδήποτε να ισχύουν οι εξής προϋποθέσεις: ο αριθμός των χαρακτηριστικών των δύο πινάκων πρέπει να είναι ίδιος, και τα πεδία ορισμού των αντίστοιχων χαρακτηριστικών των δύο πινάκων πρέπει να είναι ίδια.
Ένωση (Union) - παράδειγμα Κεφάλαιο 7: Σχεσιακή Άλγεβρα Ένωση (Union) - παράδειγμα «Βρες τις γνωστικές περιοχές με αριθμό συνδρομητών μικρότερο από 5 ή μεγαλύτερο από 50». «Βρες τα ονόματα των συνεδρίων και των περιοδικών που υπάρχουν καταχωρισμένα στη ΒΔ».
Διαφορά Συνόλων (Set difference) Κεφάλαιο 7: Σχεσιακή Άλγεβρα Διαφορά Συνόλων (Set difference) Χρησιμοποιείται για να απομονώσει τις γραμμές ενός πίνακα, οι οποίες δεν ανήκουν σε κάποιον άλλο πίνακα. Η πράξη βασίζεται στην πράξη της διαφοράς συνόλων και συμβολίζεται με το πρόσημο της αφαίρεσης – . Για να λειτουργήσει η πράξη της αφαίρεσης πρέπει οπωσδήποτε να ισχύουν οι εξής προϋποθέσεις: ο αριθμός των χαρακτηριστικών των δύο πινάκων πρέπει να είναι ίδιος, και τα πεδία ορισμού των αντίστοιχων χαρακτηριστικών των δύο πινάκων πρέπει να είναι ίδια.
Τομή Πινάκων (Intersection) Κεφάλαιο 7: Σχεσιακή Άλγεβρα Τομή Πινάκων (Intersection) Συμβολίζεται με ∩ και επιστρέφει τις κοινές πλειάδες των δύο πινάκων. Πρέπει να ισχύουν οι προϋποθέσεις συμβατότητας, όπως στην πράξη της ένωσης. «Βρες τα κοινά ονόματα συγγραφέων και συνδρομητών, χωρίς κατ'ανάγκη να είναι και το ίδιο πρόσωπο». Χρησιμοποιώντας προβολή και τομή πινάκων έχουμε: Ισχύει γενικώς:
Φυσική Σύνδεση (Natural Join) Κεφάλαιο 7: Σχεσιακή Άλγεβρα Φυσική Σύνδεση (Natural Join) Η φυσική σύνδεση δημιουργεί ένα υποσύνολο του Καρτεσιανού γινομένου, αναλόγως με την τιμή κάποιου κοινού χαρακτηριστικού των πινάκων (χρησιμοποιείται αυτόματα ο τελεστής ισότητας).
Φυσική Σύνδεση Η έκφραση: είναι ισοδύναμη με: Κεφάλαιο 7: Σχεσιακή Άλγεβρα Φυσική Σύνδεση Η έκφραση: είναι ισοδύναμη με:
Σύνδεση-θ (θ-join) Η σύνδεση-θ ορίζει την συνθήκη-θ της σύνδεσης Κεφάλαιο 7: Σχεσιακή Άλγεβρα Σύνδεση-θ (θ-join) Η σύνδεση-θ ορίζει την συνθήκη-θ της σύνδεσης Επιτρέποντας μεγαλύτερη ευελιξία δημιουργίας Συνδέσεων.
Εξωτερική Σύνδεση (Outer Join) Κεφάλαιο 7: Σχεσιακή Άλγεβρα Εξωτερική Σύνδεση (Outer Join) Η εξωτερική σύνδεση δίνει όλες τις γραμμές του αριστερού ή/και του δεξιού πίνακα, χωρίς να υπάρχει ταύτιση των τιμών των κοινών χαρακτηριστικών κατ’ ανάγκη. Η εξωτερική σύνδεση μπορεί να είναι αριστερή (left), δεξιά (right) ή πλήρης (full) εξωτερική σύνδεση.
Εξωτερική Σύνδεση (left Outer Join) Κεφάλαιο 7: Σχεσιακή Άλγεβρα Εξωτερική Σύνδεση (left Outer Join) Aριστερή εξωτερική σύνδεση
Εξωτερική Σύνδεση (Outer Join) Κεφάλαιο 7: Σχεσιακή Άλγεβρα Εξωτερική Σύνδεση (Outer Join) Δεξιά (right) εξωτερική σύνδεση
Εξωτερική Σύνδεση (Outer Join) Κεφάλαιο 7: Σχεσιακή Άλγεβρα Εξωτερική Σύνδεση (Outer Join) πλήρης (full) εξωτερική σύνδεση.
Διαίρεση (division) Η πράξη της διαίρεσης δίνει ως αποτέλεσμα: Κεφάλαιο 7: Σχεσιακή Άλγεβρα Διαίρεση (division) Η πράξη της διαίρεσης δίνει ως αποτέλεσμα: τα χαρακτηριστικά που εμπεριέχονται σε ένα πίνακα αλλά δεν εμπεριέχονται στον άλλον, Π.χ. Χ={Α1,Α2,Α3,Α4,Α5} & Υ={Α1,Α2,Α3} οπότε Ζ=Χ-Υ={Α4,Α5} Εκείνες τις τιμές χαρακτηριστικών όπου για κάθε τμήμα πλειάδας του R υπάρχει όμοια πλειάδα και στο S.
Κεφάλαιο 7: Σχεσιακή Άλγεβρα Διαίρεση (division) Η διαίρεση είναι ισοδύναμη με την ακολουθία των εξής πράξεων:
Κεφάλαιο 7: Σχεσιακή Άλγεβρα Σύνοψη Η σχεσιακή άλγεβρα ορίζει ένα σύνολο πράξεων που εφαρμόζονται σε μία ή περισσότερες σχέσεις. Οι θεμελιώδεις πράξεις της σχεσιακής άλγεβρας είναι οι: επιλογή, προβολή, καρτεσιανό γινόμενο, μετονομασία, ένωση και διαφορά. Ορίζονται και οι εξής επιπλέον πράξεις: τομή, φυσική σύνδεση, σύνδεση-θ, αριστερή/δεξιά και πλήρης εξωτερική σύνδεση, διαίρεση.