Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

ΣΧΕΣΙΑΚΕΣ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ

Παρόμοιες παρουσιάσεις


Παρουσίαση με θέμα: "ΣΧΕΣΙΑΚΕΣ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ"— Μεταγράφημα παρουσίασης:

1 ΣΧΕΣΙΑΚΕΣ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ
Ευάγγελος Κεχρής

2 Κεφάλαιο 4: Το Σχεσιακό Μοντέλο Δεδομένων
Κεφάλαιο 4: Το Σχεσιακό Μοντέλο Δεδομένων

3 Στόχοι του 4ου κεφαλαίου
Στόχος του κεφαλαίου αυτού είναι να παρουσιάσει αναλυτικά το σχεσιακό μοντέλο που είναι το δημοφιλέστερο μοντέλο υλοποίησης σήμερα. Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

4 Το Σχεσιακό Μοντέλο Δεδομένων
Προτάθηκε από τον Edgar Codd το 1970 Είναι ένα από τα μοντέλα υλοποίησης Είναι το δημοφιλέστερο μοντέλο υλοποίησης Edgar Codd Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

5 Πίνακας Δισδιάστατη δομή αποθήκευσης δεδομένων
Αποτελείται από γραμμές και στήλες ( πεδία) Έχει ένα όνομα που βοηθάει στη κατανόηση Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

6 Παράδειγμα Πίνακα ΣΥΜΒΟΥΛΟΙ ΑΦΜ Όνομα Επώνυμο ΈτοςΓέννησης
Μία εταιρία που παρέχει επιχειρηματικές συμβουλές θέλει να αποθηκεύσει τα δεδομένα των συμβούλων που συνεργάζονται με την εταιρία. Για κάθε σύμβουλο η εταιρία αποθηκεύει: τον αριθμό του φορολογικού του μητρώου (ΑΦΜ), το όνομα,  το επώνυμό του και  το έτος γεννήσεώς του. Όνομα του πίνακα: ΣΥΜΒΟΥΛΟΙ Η δομή του πίνακα είναι η παρακάτω: ΣΥΜΒΟΥΛΟΙ ΑΦΜ Όνομα Επώνυμο ΈτοςΓέννησης Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

7 Πίνακες και Γεγονότα ΣΥΜΒΟΥΛΟΙ ΑΦΜ Όνομα Επώνυμο ΈτοςΓέννησης 1000001
Μας δίνονται τώρα ότι η εταιρία συνεργάζεται με δύο συμβούλους: ο ένας σύμβουλος ονομάζεται Ιωάννης Δήμου, γεννημένος το και με ΑΦΜ (γεγονός 1) ο άλλος σύμβουλος ονομάζεται Γεώργιος Αλεξίου, είναι γεννημένος το και έχει ΑΦΜ (γεγονός 2). ΣΥΜΒΟΥΛΟΙ ΑΦΜ Όνομα Επώνυμο ΈτοςΓέννησης Ιωάννης Δήμου 1955 Γεώργιος Αλεξίου 1969 Γεγονός 1 Γεγονός 2 Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

8 Πίνακας ΕΡΓΑ ΕΡΓΑ Κωδικός Εργου Ημερομ. Εναρξης Λήξης ΑΦΜ Υπεύθυνου
Με την ίδια λογική, δεδομένα που αφορούν τα έργα που αναλαμβάνει η εταιρεία μπορεί να αποθηκευτούν στον πίνακα ΕΡΓΑ. Δίνεται ότι για κάθε έργο υπάρχει ένας σύμβουλος που είναι υπεύθυνος για το έργο αυτό. ΕΡΓΑ Κωδικός Εργου Ημερομ. Εναρξης Λήξης ΑΦΜ Υπεύθυνου INTEREG 3/4/2000 23/8/2002 ESPRIT 4/5/2000 14/7/2002 ΠΕΠ 5/6/2000 17/10/2003 ΜΕΝΤΟΡ 6/7/2000 10/8/2004 Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

9 ΣΥΜΒΟΥΛΟΙ ΑΦΜ Όνομα Επώνυμο ΈτοςΓέννησης 1000001 Ιωάννης Δήμου 1955
Μπορούμε να χρησιμοποιήσουμε αυτή τη βάση δεδομένων για να απαντήσουμε ερωτήματα όπως: -- Πότε γεννήθηκε ο υπεύθυνος του έργου ΠΕΠ; -- Για ποια έργα είναι υπεύθυνος ο Δήμου Ιωάννης; ΣΥΜΒΟΥΛΟΙ ΑΦΜ Όνομα Επώνυμο ΈτοςΓέννησης Ιωάννης Δήμου 1955 Γεώργιος Αλεξίου 1969 ΕΡΓΑ Κωδικός Εργου Ημερομ. Εναρξης Λήξης ΑΦΜ Υπεύθυνου INTEREG 3/4/2000 23/8/2002 ESPRIT 4/5/2000 14/7/2002 ΠΕΠ 5/6/2000 17/10/2003 ΜΕΝΤΟΡ 6/7/2000 10/8/2004 Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

10 Σχεσιακή Βάση Δεδομένων
Σχεσιακή βάση δεδομένων είναι ένα σύνολο σχετιζόμενων πινάκων. Οι δύο πίνακες ΣΥΜΒΟΥΛΟΙ και ΕΡΓΑ αποτελούν μία σχεσιακή βάση δεδομένων γιατί περιέχουν δεδομένα που σχετίζονται μεταξύ τους. Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

11 Ορολογία Σχεσιακού Μοντέλου
Σχέση (relation) είναι ένας πίνακας δύο διαστάσεων. Τα χαρακτηριστικά (attributes) μίας σχέσης είναι οι στήλες του πίνακα. Κάθε χαρακτηριστικό έχει ένα όνομα. Μία πλειάδα (tuple) μίας σχέσης είναι μία γραμμή του πίνακα. Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

12 Ανεπίσημη Ορολογία Σχεσιακού Μοντέλου
Μέχρι τώρα χρησιμοποιήσαμε την ανεπίσημη (άτυπη) ορολογία του σχεσιακού μοντέλου: Πίνακας Γραμμή Στήλη Σχέση = Πίνακας Χαρακτηριστικό = Στήλη ή Πεδίο Πλειάδα = Γραμμή ή Εγγραφή Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

13 Επίσημη Ορολογία Σχεσιακού Μοντέλου
Η επίσημη (τυπική) ορολογία που προτάθηκε από τον Codd και η σχέση της με την ανεπίσημη ορολογία φαίνεται παρακάτω: Σχέση = Πίνακας Χαρακτηριστικό = Στήλη ή Πεδίο Πλειάδα = Γραμμή ή Εγγραφή Στη συνέχεια θα χρησιμοποιείται κυρίως η τυπική (επίσημη) ορολογία Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

14 Πρωτεύον Κλειδί Πρωτεύον κλειδί (primary key) είναι το σύνολο των χαρακτηριστικών μίας σχέσης που έχουν μοναδική τιμή Δεν υπάρχουν δύο πλειάδες στη σχέση που να έχουν την ίδια τιμή για τα χαρακτηριστικά αυτά. Επιτρέπει τον προσδιορισμό μίας πλειάδας με μοναδικό τρόπο. Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

15 Είδη Πρωτεύοντος Κλειδιού
Το πρωτεύον κλειδί μπορεί να είναι: Απλό: περιλαμβάνει ένα μόνο χαρακτηριστικό Σύνθετο: αποτελείται από δύο ή περισσότερα χαρακτηριστικά Το πρωτεύον κλειδί ενός πίνακα δείχνεται με υπογράμμιση. Στη σχέση ΣΥΜΒΟΥΛΟΙ το πρωτεύον κλειδί είναι απλό και περιλαμβάνει μόνο το χαρακτηριστικό ΑΦΜ Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

16 Τύπος Δεδομένων Κάθε χαρακτηριστικό έχει ένα τύπο δεδομένων (data type) Ο τύπος δεδομένων καθορίζει το είδος των τιμών που είναι αποδεκτές για το χαρακτηριστικό αυτό. Παραδείγματα τύπων δεδομένων: Αριθμός    Σύνολο Χαρακτήρων (κείμενο)    Ημερομηνία    Νομισματική Μονάδα Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

17 Ξένο Κλειδί Ξένο κλειδί (foreign key) είναι ένα σύνολο χαρακτηριστικών που χρησιμοποιείται για να συνδυαστούν δεδομένα από δύο σχέσεις. Παράδειγμα Ξένου Κλειδιού Πότε γεννήθηκε ο σύμβουλος που είναι υπεύθυνος για το έργο με κωδικό έργου ΜΕΝΤΟΡ; Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

18 -- Πότε γεννήθηκε ο υπεύθυνος του έργου ΜΕΝΤOR;
ΣΥΜΒΟΥΛΟΙ ΑΦΜ Όνομα Επώνυμο ΈτοςΓέννησης Ιωάννης Δήμου 1955 Γεώργιος Αλεξίου 1969 ΕΡΓΑ Κωδικός Εργου Ημερομ. Εναρξης Λήξης ΑΦΜ Υπεύθυνου INTEREG 3/4/2000 23/8/2002 ESPRIT 4/5/2000 14/7/2002 ΠΕΠ 5/6/2000 17/10/2003 ΜΕΝΤΟR 6/7/2000 10/8/2004 Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

19 Σχήμα Σχεσιακής Β.Δ. Η δομή μίας σχεσιακής βάσης δεδομένων χωρίς να εμφανίζονται τα δεδομένα της λέγεται σχήμα. Το σχήμα μίας σχεσιακής βάσης δείχνει: τις σχέσεις τα χαρακτηριστικά τους τα πρωτεύοντα κλειδιά τα ξένα κλειδιά με τις αναφορές τους Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

20 Παράδειγμα Σχήματος ΣΥΜΒΟΥΛΟΙ ΕΡΓΑ ΑΦΜ Όνομα Επώνυμο ΈτοςΓέν. Κωδικός
Λέμε ότι: «Το ξένο κλειδί ΑΦΜ Υπεύθυνου αναφέρεται στο ΑΦΜ του πίνακα ΣΥΜΒΟΥΛΟΙ» ΕΡΓΑ Κωδικός Εργου Ημερομ. Εναρξης Λήξης ΑΦΜ Υπεύθυνου ξ.κ. Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

21 Περιορισμοί Σχεσιακού Μοντέλου
Οι περιορισμοί που επιβάλει το σχεσιακό μοντέλο εξασφαλίζουν την εγκυρότητα των δεδομένων μίας σχεσιακής βάσης δεδομένων Οι περιορισμοί έχουν σχέση με: το είδος των τιμών ενός χαρακτηριστικού τις επιτρεπτές τιμές ενός πρωτεύοντος κλειδιού τις επιτρεπτές τιμές ενός ξένου κλειδιού Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

22 Βασικός Περιορισμός Οι τιμές σε μία σχέση πρέπει να είναι αδιαίρετες και ατομικές Παράδειγμα 1: Το χαρακτηριστικό ΟΝΟΜΑΤΕΠΩΝΥΜΟ δεν είναι αδιαίρετο γιατί μπορεί να διασπαστεί σε δύο χαρακτηριστικά (ΟΝΟΜΑ και ΕΠΩΝΥΜΟ). ΣΥΜΒΟΥΛΟΙ ΑΦΜ Όνοματεπώνυμο Έτος Γέννησης Υπεύθυνος Σε έργα Ιωάννης Δήμου 1955 ΜΕΝΤΟΡ Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

23 Παράδειγμα 2ο: Πολλαπλές τιμές
Ο Ιωάννης Δήμου είναι υπεύθυνος για το έργο ΜΕΝΤΟΡ, ενώ Ο Γεώργιος Αλεξίου είναι υπεύθυνος για τα έργα INTEREG, ESPRIT και ΠΕΠ. Το χαρακτηριστικό ΥπεύθυνοςΣεΈργα δεν είναι ατομικό (δηλ. δεν παίρνει μία τιμή αλλά πολλές) ΣΥΜΒΟΥΛΟΙ ΑΦΜ Όνομα Επώνυμο Έτος Γέννησης Υπεύθυνος Σε έργα Ιωάννης Δήμου 1955 ΜΕΝΤΟΡ Γεώργιος Αλεξίου 1969 INTEREG ESPRIT ΠΕΠ Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

24 Η τιμή null Ορισμένες φορές δεν είναι γνωστή η τιμή κάποιου χαρακτηριστικού. Στις περιπτώσεις αυτές, το σχεσιακό μοντέλο, παρέχει τη δυνατότητα χρήσης μία ειδικής τιμής, της τιμής null. Η τιμή null μπορεί να χρησιμοποιηθεί για οποιοδήποτε τύπο δεδομένων. Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

25 Παράδειγμα χρήσης της null
Ημερομηνία Κείμενο ΕΡΓΑΖΟΜΕΝΟΙ ΑΦΜ Επώνυμο Έτος Γεν. A’Πτυχίο 09876 Ανδρέου Null Φυσικό 08765 Βάσου 1980 Ιατρική 07654 Ιωάννου 1964 Ποιες είναι οι πιθανές ερμηνείες του Null; Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

26 Ακεραιότητα Οντότητας
Το πρωτεύον κλειδί μίας σχέσης δεν μπορεί να λάβει την τιμή null. Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

27 Ακεραιότητα Αναφοράς Οι αναφορές ενός ξένου κλειδιού πρέπει να είναι πάντοτε θεμιτές Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

28 Παράδειγμα παραβίασης της ακεραιότητας της αναφοράς
ΣΥΜΒΟΥΛΟΙ ΑΦΜ Όνομα Επώνυμο ΈτοςΓέννησης Ιωάννης Δήμου 1955 Γεώργιος Αλεξίου 1969 ? ΕΡΓΑ Κωδικός Εργου Ημερομ. Εναρξης Λήξης ΑΦΜ Υπεύθυνου INTEREG 3/4/2000 23/8/2002 ESPRIT 4/5/2000 14/7/2002 ΠΕΠ 5/6/2000 17/10/2003 ΜΕΝΤΟR 6/7/2000 10/8/2004 ΚΑΝΤΟΡ 7/9/2001 10/12/2003 Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

29 Επιχειρηματικός Περιορισμός
Είναι ένας γενικός περιορισμός που σχετίζεται με: τον τρόπο λειτουργίας της επιχείρησης. την σημασία των δεδομένων Παράδειγμα 1 (τρόπος λειτουργίας) Κάθε σύμβουλος της εταιρίας συμβούλων πρέπει να έχει ηλικία ανάμεσα στα 20 και στα 65 χρόνια. Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

30 Παράδειγμα Επιχ. Περιορισμού που σχετίζεται με τη σημασία των δεδομένων
ΕΡΓΑ Κωδικός Εργου Ημερομ. Εναρξης Λήξης ΑΦΜ Υπεύθυνου INTEREG 3/4/2000 23/8/2002 ESPRIT 4/5/2000 14/7/2002 ΠΕΠ 5/6/2000 17/10/2003 ΜΕΝΤΟΡ 6/7/2000 10/8/2004 Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

31 Επιβολή Περιορισμών Όλοι οι περιορισμοί μίας βάσης δεδομένων πρέπει να γνωστοποιηθούν στο ΣΔΒΔ κατά τη φάση της ανάπτυξης της βάσης δεδομένων. Η γνωστοποίηση των περιορισμών γίνεται με τη βοήθεια της Γλώσσας Ορισμού Δεδομένων Το ΣΔΒΔ: αποθηκεύει τους περιορισμούς μόνιμα στον κατάλογο επιβάλλει τους περιορισμούς αυτούς απορρίπτοντας τις πράξεις που τους παραβιάζουν. Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

32 Πράξεις Σχεσιακού Μοντέλου
Στο σχεσιακό μοντέλο είναι διαθέσιμες οι πράξεις της: εισαγωγής διαγραφής τροποποίησης μίας πλειάδας Επίσης είναι διαθέσιμη η αναζήτηση ενός συνόλου πλειάδων Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

33 Παράδειγμα πράξεων ΣΥΜΒΟΥΛΟΙ ΣΥΜΒΟΥΛΟΙ ΣΥΜΒΟΥΛΟΙ ΣΥΜΒΟΥΛΟΙ
Δημιουργία πίνακα ΣΥΜΒΟΥΛΟΙ ΑΦΜ Όνομα Επώνυμο ΈτοςΓέννησης ΣΥΜΒΟΥΛΟΙ Εισαγωγή της πλειάδας ( , Ιωάννης, Δήμου, 1955) ΑΦΜ Όνομα Επώνυμο ΈτοςΓέννησης Ιωάννης Δήμου 1955 ΣΥΜΒΟΥΛΟΙ Εισαγωγή της πλειάδας ( , Γιώργος, Αλεξίου, 1969) ΑΦΜ Όνομα Επώνυμο ΈτοςΓέννησης Ιωάννης Δήμου 1955 Γιώργος Αλεξίου 1969 Διαγραφή της πλειάδας ( , Ιωάννης, Δήμου, 1955) ΣΥΜΒΟΥΛΟΙ ΑΦΜ Όνομα Επώνυμο ΈτοςΓέννησης Ιωάννης Δήμου 1955 Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

34 Πράξεις και Ακεραιότητα
Οι πράξεις αυτές μπορεί να έχουν επιπτώσεις στην ακεραιότητα οντότητας ακεραιότητα αναφοράς Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

35 Εισαγωγή Πλειάδας Απόπειρα εισαγωγής της πλειάδας:
ΣΥΜΒΟΥΛΟΙ ΑΦΜ Όνομα Επώνυμο ΈτοςΓέννησης Ιωάννης Δήμου 1955 Γεώργιος Αλεξίου 1969 Απόπειρα εισαγωγής της πλειάδας: (null, Παναγιώτης, Αντωνίου, 1968) Ποιος περιορισμός παραβιάζεται; Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

36 ΕΡΓΑ ΣΥΜΒΟΥΛΟΙ Κωδικός Εργου Ημερομ. Εναρξης Λήξης ΑΦΜ Υπεύθυνου
ΜΕΝΤΟΡ 6/7/2000 10/8/2004 ΚΠΣ 9/7/2002 10/7/2004 ΣΥΜΒΟΥΛΟΙ ΑΦΜ Όνομα Επώνυμο ΈτοςΓέν. Ιωάννης Δήμου 1955 Γεώργιος Αλεξίου 1969 Απόπειρα εισαγωγής στα ΕΡΓΑ της πλειάδας: (Γ’ ΚΠΣ, 10/3/2002, 12/5/2004, ) Ποιος περιορισμός παραβιάζεται; Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

37 Διαγραφή Πλειάδας ΕΡΓΑ Κωδικός Εργου Ημερομ. Εναρξης Λήξης
ΑΦΜ Υπεύθυνου ΜΕΝΤΟΡ 6/7/2000 10/8/2004 ΚΠΣ 9/7/2002 10/7/2004 ΣΥΜΒΟΥΛΟΙ Απόπειρες Διαγραφής ΑΦΜ Όνομα Επώνυμο ΈτοςΓέν. Ιωάννης Δήμου 1955 Γεώργιος Αλεξίου 1969 Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

38 Σχήμα Σχεσιακής Β.Δ. Η δομή μίας σχεσιακής βάσης δεδομένων χωρίς να εμφανίζονται τα δεδομένα της λέγεται σχήμα. Το σχήμα μίας σχεσιακής βάσης δείχνει: τις σχέσεις τα χαρακτηριστικά τους τα πρωτεύοντα κλειδιά τα ξένα κλειδιά με τις αναφορές τους Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

39 Παράδειγμα Σχήματος ΕΡΓΑ ΣΥΜΒΟΥΛΟΙ Κωδικός Εργου Ημερομ. Εναρξης Λήξης
ΑΦΜ Υπεύθυνου ξ.κ. Το ΑΦΜ Υπεύθυνου αναφέρεται στο ΑΦΜ του πίνακα ΣΥΜΒΟΥΛΟΙ ΣΥΜΒΟΥΛΟΙ ΑΦΜ Όνομα Επώνυμο ΈτοςΓέν.

40 Ανάγνωση – Ερμηνεία Σχήματος
ΕΡΓΑ Κωδικός Εργου Ημερομ. Εναρξης Λήξης ΑΦΜ Υπεύθυνου ξ.κ. Δεν επιτρέπεται εισαγωγή μίας τιμής στο ΑΦΜ Υπευθύνου που δεν υπάρχει ως ΑΦΜ Δεν επιτρέπεται διαγραφή μίας τιμής του ΑΦΜ που ήδη χρησιμοποιείται ως ΑΦΜ Υπευθύνου ΣΥΜΒΟΥΛΟΙ ΑΦΜ Όνομα Επώνυμο ΈτοςΓέν. Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

41 Σχεσιακή Άλγεβρα Η σχεσιακή άλγεβρα είναι το μαθηματικό υπόβαθρο του σχεσιακού μοντέλου δεδομένων. Αποτελεί μία θεωρητική γλώσσα που βασίζεται στη θεωρία των συνόλων και προσφέρει ένα σύνολο πράξεων για τη διαχείριση των σχέσεων. Οι πράξεις της σχεσιακής άλγεβρας: Άλλες προέρχονται από τη θεωρία συνόλων Άλλες αναπτύχθηκαν ειδικά για τη διαχείριση σχεσιακών βάσεων δεδομένων Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

42 Οι πράξεις της σχεσιακής άλγεβρας
Οι πράξεις της σχεσιακής άλγεβρας που προέρχονται από τη θεωρία συνόλων: Η ένωση Η τομή Η διαφορά και Το καρτεσιανό γινόμενο Οι πράξεις της σχεσιακής άλγεβρας που αναπτύχθηκαν ειδικά για τη διαχείριση σχεσιακών βάσεων δεδομένων: Η πράξη της επιλογής και Η πράξη της προβολής Όλες οι πράξεις της σχεσιακής άλγεβρας: εφαρμόζονται πάνω σε μία σχέση και ως αποτέλεσμα παράγουν μία άλλη σχέση. Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

43 Επιλογή: σ συνθήκη (R) Η πράξη της επιλογής συμβολίζεται ως:
σ είναι το σύμβολο της επιλογής, R είναι μία υπάρχουσα σχέση και συνθήκη είναι μία παράσταση που δημιουργείται με τη βοήθεια τελεστών σύγκρισης και λογικών τελεστών. Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

44 Οι τελεστές σύγκρισης και οι λογικοί τελεστές
Οι τελεστές σύγκρισης είναι οι: ίσο: = μεγαλύτερο: > μικρότερο: < μεγαλύτερο ή ίσο:  μικρότερο ή ίσο:  διάφορο:  ενώ οι λογικοί τελεστές είναι οι: AND (λογικό και), OR (λογική ή), NOT (λογικό όχι). Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

45 Παραδείγματα επιλογής 1
ΠΡΟΪΟΝΤΑ Κωδικός Περιγραφή ΤιμήΑγοράς Απόθεμα Κατηγορία 1003 Μαρκαδόρος 1,3 130 1 1006 CD Audio 1,2 84 2 1002 Μολύβι 250 1005 CD ROM 315 1004 Δισκέτα 3,5’’ 0,8 120 1001 Στυλό 0,75 200 Το αποτέλεσμα της πράξης σΚατηγορία=2 (ΠΡΟΪΟΝΤΑ): Κωδικός Περιγραφή ΤιμήΑγοράς Απόθεμα Κατηγορία 1006 CD Audio 1,2 84 2 1005 CD ROM 1 315 1004 Δισκέτα 3,5’’ 0,8 120 Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

46 Παραδείγματα επιλογής 2
ΠΡΟΪΟΝΤΑ Κωδικός Περιγραφή ΤιμήΑγοράς Απόθεμα Κατηγορία 1003 Μαρκαδόρος 1,3 130 1 1006 CD Audio 1,2 84 2 1002 Μολύβι 250 1005 CD ROM 315 1004 Δισκέτα 3,5’’ 0,8 120 1001 Στυλό 0,75 200 Το αποτέλεσμα της πράξης σκατηγορία = 1 AND ΤιμήΑγοράς 1 (ΠΡΟΪΟΝΤΑ): Κωδικός Περιγραφή ΤιμήΑγοράς Απόθεμα Κατηγορία 1002 Μολύβι 1 250 1001 Στυλό 0,75 200 Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

47 Προβολή: Π χ1, χ2,..., χν (R) Η πράξη της προβολής συμβολίζεται ως :
Π είναι το σύμβολο της επιλογής, R είναι μία υπάρχουσα σχέση και χ1, χ2,..., χν είναι χαρακτηριστικά της R. Η πράξη της προβολής δημιουργεί από τη δεδομένη αρχική σχέση R μία νέα σχέση, η οποία περιέχει μόνον τα χαρακτηριστικά χ1, χ2,..., χν της R. Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

48 Παραδείγματα προβολής
Το αποτέλεσμα της πράξης ΠΚωδικός, ΤιμήΑγοράς(ΠΡΟΪΟΝΤΑ) : ΠΡΟΪΟΝΤΑ Κωδι- κός Τιμή Αγοράς 1003 1,3 1006 1,2 1002 1 1005 1004 0,8 1001 0,75 Κωδι- κός Περιγραφή Τιμή Αγοράς Από- θεμα Κατη- γορία 1003 Μαρκαδόρος 1,3 130 1 1006 CD Audio 1,2 84 2 1002 Μολύβι 250 1005 CD ROM 315 1004 Δισκέτα 3,5’’ 0,8 120 1001 Στυλό 0,75 200 Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

49 Ένωση: R  S Η πράξη της ένωσης R  S δημιουργεί μία νέα σχέση :
Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

50 Παράδειγμα ένωσης ΠΩΛΗΤΕΣ_ΥΠΟΛ ΠΩΛΗΤΕΣ_ΕΚΤΥΠ
ΠΩΛΗΤΕΣ_ΥΠΟΛ  ΠΩΛΗΤΕΣ_ΕΚΤΥΠ Όνομα Αστερίου Βασιλείου Δημητρίου Ευαγγελίδης Σταματίου Όνομα Αστερίου Γεωργίου Ζαφειρίου Σταματίου Όνομα Αστερίου Βασιλείου Δημητρίου Ευαγγελίδης Σταματίου Γεωργίου Ζαφειρίου -- Ορισμένοι πωλητές (π.χ. Αστεριού, Σταματίου) εμφανίζονται και στις δύο αρχικές σχέσεις. -- Ωστόσο, κάθε πωλητής (ακόμη και οι Αστεριού και Σταματίου) εμφανίζονται στην τελική σχέση που προκύπτει ΠΩΛΗΤΕΣ_ΥΠΟΛ  ΠΩΛΗΤΕΣ_ΕΚΤΥΠ μία μόνο φορά. --- Επειδή μία σχέση είναι ένα σύνολο, η πράξη ΠΩΛΗΤΕΣ_ΥΠΟΛ  ΠΩΛΗΤΕΣ_ΕΚΤΥΠ είναι ίδια με την πράξη ΠΩΛΗΤΕΣ_ΕΚΤ  ΠΩΛΗΤΕΣ_ΥΠΟΛ. Γενικά: Α  Β = Β  Α. Όμοια Α  Β = Β  Α. Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

51 Τομή: R  S Η πράξη της τομής R S δημιουργεί μία νέα σχέση:
Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

52 Παράδειγμα τομής ΠΩΛΗΤΕΣ_ΥΠΟΛ ΠΩΛΗΤΕΣ_ΕΚΤΥΠ ΠΩΛΗΤΕΣ_ΥΠΟΛ  ΠΩΛΗΤΕΣ_ΕΚΤΥΠ Όνομα Αστερίου Βασιλείου Δημητρίου Ευαγγελίδης Σταματίου Όνομα Αστερίου Γεωργίου Ζαφειρίου Σταματίου Όνομα Αστερίου Σταματίου Η πράξη ΠΩΛΗΤΕΣ_ΥΠΟΛ  ΠΩΛΗΤΕΣ_ΕΚΤΥΠ χρησιμοποιείται για να Βρεθούν οι πωλητές που είναι εξειδικευμένοι και στις πωλήσεις προσωπικών υπολογιστών και στις πωλήσεις εκτυπωτών. Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

53 Διαφορά: R — S Η πράξη της διαφοράς R — S δημιουργεί μία νέα σχέση:
Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

54 Παράδειγμα διαφοράς ΠΩΛΗΤΕΣ_ΥΠΟΛ ΠΩΛΗΤΕΣ_ΕΚΤΥΠ ΠΩΛΗΤΕΣ_ΥΠΟΛ — ΠΩΛΗΤΕΣ_ΕΚΤΥΠ Όνομα Αστερίου Βασιλείου Δημητρίου Ευαγγελίδης Σταματίου Όνομα Αστερίου Γεωργίου Ζαφειρίου Σταματίου Όνομα Βασιλείου Δημητρίου Ευαγγελίδης Η πράξη ΠΩΛΗΤΕΣ_ΥΠΟΛ — ΠΩΛΗΤΕΣ_ΕΚΤΥΠ χρησιμοποιείται για να βρεθούν οι πωλητές που είναι εξειδικευμένοι και στις πωλήσεις προσωπικών υπολογιστών και δεν είναι εξειδικευμένοι στις πωλήσεις εκτυπωτών. Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

55 Καρτεσιανό γινόμενο: R  S
Η νέα σχέση που δημιουργείται: συμβολίζεται ως R  S, έχει ως χαρακτηριστικά τα χαρακτηριστικά των δύο σχέσεων (R, S) και Έχει ως πλειάδες περιέχει όλους τους πιθανούς συνδυασμούς των πλειάδων δύο σχέσεων R και S Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

56 Συδυάζοντας πλειάδες από δύο πίνακες
ΒΙΒΛΙΑ ΣΥΓΓΡΑΦΕΙΣ Κωδικός Τίτλος 7071 Νοημοσύνη 403 Ψυχολογία 7023 C++ ΚωδικόςΒιβλίου Όνομα 7071 Γεωργίου Δημητρίου 403 Ασκητής 7023 Ζαφειρίου Σταματίου Οι πλειάδες που σχηματίζονται από το συνδυασμό της πρώτης εγγραφής του πίνακα ΒΙΒΛΙΑ με όλες τις πλειάδες της σχέσης ΣΥΓΓΡΑΦΕΙΣ: Κωδικός Τίτλος ΚωδικόςΒιβλίου Όνομα 7071 Νοημοσύνη Γεωργίου Δημητρίου 403 Ασκητής 7023 Ζαφειρίου Σταματίου Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

57 Παράδειγμα καρτεσιανού γινομένου
ΒΙΒΛΙΑ Χ ΣΥΓΓΡΑΦΕΙΣ Κωδικός Τίτλος ΚωδικόςΒιβλίου Όνομα 7071 Νοημοσύνη Γεωργίου Δημητρίου 403 Ασκητής 7023 Ζαφειρίου Σταματίου Ψυχολογία C++ ΒΙΒΛΙΑ Κωδικός Τίτλος 7071 Νοημοσύνη 403 Ψυχολογία 7023 C++ ΣΥΓΓΡΑΦΕΙΣ ΚωδικόςΒιβλίου Όνομα 7071 Γεωργίου Δημητρίου 403 Ασκητής 7023 Ζαφειρίου Σταματίου Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

58 Αλληλουχία πράξεων Πολλές φορές είναι απαραίτητο η σχέση που προκύπτει ως αποτέλεσμα μίας πράξης να υφίσταται την επεξεργασία μίας άλλης πράξης. Αυτό μπορεί να γίνει με δύο τρόπους όπως εξηγείται στη συνέχεια. Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

59 1ος τρόπος: δημιουργία νέων σχέσεων
Σύμφωνα με τον 1ο τρόπο, σε κάθε σχέση που προκύπτει ως αποτέλεσμα μίας πράξης δίνεται ένα ξεχωριστό όνομα χρησιμοποιώντας το σύμβολο  Το όνομα αυτό κατόπιν μπορεί να χρησιμοποιηθεί σε επόμενες πράξεις. Παράδειγμα: Δημιουργούμε τη σχέση Γ ως ένωση των σχέσεων Α και Β, γράφοντας: Γ Α  Β. Αν κατόπιν θέλουμε την προβολή των χαρακτηριστικών χ1 και χ2 της σχέσης Γ, γράφουμε : Πχ1, χ2 (Γ). Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

60 Παράδειγμα αλληλουχίας πράξεων με δημιουργία νέων σχέσεων
ΒΙΒΛΙΑ ΘΕΜΑ Κωδικός Τίτλος 7071 Expert Systems 403 Simul8 7023 C++ and Graphics ΚωδικόςΒιβλίου ΘεματικήΕνότ 7071 Α.Ι. 403 Sim 7023 A.I. Δίνονται οι σχέσεις ΒΙΒΛΙΑ και ΘΕΜΑ Για να βρούμε το θέμα του βιβλίου που έχει ως τίτλο Expert Systems με δημιουργία νέων σχέσεων: ΘΕΜΑΤΑ_ΒΙΒΛΙΩΝ  ΒΙΒΛΙΑ  ΘΕΜΑ ΑΠΟΔΕΚΤΑ_ΘΕΜΑΤΑ  σΚωδικός=ΚωδικόςΒιβλίου (ΘΕΜΑΤΑ_ΒΙΛΙΩΝ) ΒΙΒΛΙΑ_ES  σ Τίτλος = ‘Expert Systems’ (ΑΠΟΔΕΚΤΑ_ΘΕΜΑΤΑ) ΘΕΜΑ_ΒΙΒΛΙΟΥ_ES π ΘεματικήΕνότ (ΒΙΒΛΙΑ_ES) Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

61 2ος τρόπος: σύνθεση σχέσεων
Σύμφωνα με τον 2ο τρόπο δηλώνουμε την τελική σχέση ως σύνθεση σχέσεων. Παράδειγμα: Αν θέλουμε την προβολή των χαρακτηριστικών χ1 και χ2 μίας σχέσης που προκύπτει ως ένωση των σχέσεων Α και Β, γράφουμε: Πχ1, χ2 (Α  Β). Στην περίπτωση, όπως υποδηλώνεται από τις παρενθέσεις, πρώτα εκτελείται η πράξη της ένωσης και κατόπιν η πράξη της προβολής. Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

62 Παράδειγμα αλληλουχίας πράξεων με χρήση σύνθετης πράξης
ΒΙΒΛΙΑ ΘΕΜΑ Κωδικός Τίτλος 7071 Expert Systems 403 Simul8 7023 C++ and Graphics ΚωδικόςΒιβλίου ΘεματικήΕνότ 7071 Α.Ι. 403 Sim 7023 A.I. Δίνονται οι σχέσεις ΒΙΒΛΙΑ και ΘΕΜΑ Για να βρούμε το θέμα του βιβλίου που έχει ως τίτλο Expert Systems με χρήση σύνθετης πράξης: πΘεματικήΕνότ(σΤίτλος=‘Expert Systems’(σΚωδικός=ΚωδικόςΒιβλίου(ΒΙΒΛΙΑΘΕΜΑ))) Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

63 Καρτεσιανό γινόμενο και επιλογή
Το καρτεσιανό γινόμενο παράγει όλους τους δυνατούς συνδυασμούς πλειάδων που προέρχονται από δύο σχέσεις. Τις περισσότερες φορές, η σχέση που παράγεται περιέχει περισσότερες πλειάδες από όσες χρειάζονται. Για το λόγο αυτό, το καρτεσιανό γινόμενο συνήθως ακολουθείται από μία πράξη επιλογής ώστε να απορριφθούν οι πλεονάζουσες πλειάδες. Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

64 Συνένωση R  S Επειδή η αλληλουχία του καρτεσιανού γινομένου με την επιλογή είναι πολύ συχνή, υπάρχει μία συντομογραφία των δύο αυτών πράξεων, η οποία ονομάζεται συνένωση και συμβολίζεται με το σύμβολο συνθήκη Στην περίπτωση αυτή, οι πλειάδες του καρτεσιανού γινομένου R Χ S, που επιλέγονται, είναι αυτές που ικανοποιούν τη συνθήκη που αναφέρεται στην πράξη. Έτσι, αν R, S είναι δύο σχέσεις, τότε η πράξη: R συνθήκη S είναι ισοδύναμη με την πράξη: σ συνθήκη (R  S). Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

65 Παράδειγμα συνένωσης ΒΙΒΛΙΑ ΣΥΓΓΡΑΦΕΙΣ
Κωδικός Τίτλος 7071 Νοημοσύνη 403 Ψυχολογία 7023 C++ ΚωδικόςΒιβλίου Όνομα 7071 Γεωργίου Δημητρίου 403 Ασκητής 7023 Ζαφειρίου Σταματίου ΒΙΒΛΙΟΚωδικός=ΚωδικόςΒιβλίουΣΥΓΓΡΑΦΕΙΣ Κωδικός Τίτλος ΚωδικόςΒιβλίου Όνομα 7071 Νοημοσύνη Γεωργίου Δημητρίου 403 Ψυχολογία Ασκητής 7023 C++ Ζαφειρίου Σταματίου Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

66 Φυσική συνένωση R * S Ας υποθέσουμε ότι έχουμε δύο σχέσεις R, S που έχουν ένα κοινό χαρακτηριστικό. Η φυσική συνένωση R * S δημιουργεί μία νέα σχέση, η οποία περιέχει από το καρτεσιανό γινόμενο R  S τις πλειάδες εκείνες που έχουν την ίδια τιμή στο κοινό χαρακτηριστικό των δύο σχέσεων. Επιπλέον, η φυσική συνένωση εμφανίζει το κοινό χαρακτηριστικό μία μόνο φορά. Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

67 Παράδειγμα φυσικής συνένωσης
ΒΙΒΛΙΑ ΘΕΜΑ Κωδικός Τίτλος 7071 Expert Systems 403 Simul8 7023 C++ and Graphics Κωδικός ΘεματικήΕνότ 7071 Α.Ι. 403 Sim 7023 A.I. ΒΙΒΛΙΑ * ΘΕΜΑ Κωδικός Τίτλος ΘεματικήΕνότ 7071 Expert Systems Α.Ι. 403 Simul8 Sim 7023 C++ and Graphics A.I. Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

68 Η σχεσιακή διαίρεσης Η σχεσιακή πράξη της διαίρεσης χρειάζεται αρκετές φορές στην πράξη. Πρακτικά, η σχεσιακή διαίρεση επιτρέπει να εντοπιστούν σε μία σχέση οι πλειάδες οι οποίες περιέχουν όλες τις πλειάδες μίας άλλης σχέσης. Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

69 Διαίρεση R  S Για την πράξη της διαίρεσης R  S, απαιτείται:
Το αποτέλεσμα της σχεσιακής διαίρεσης είναι μία σχέση που: Έχει ως χαρακτηριστικά τα χαρακτηριστικά της σχέσης R που δεν ανήκουν στην S. Περιλαμβάνει ως πλειάδες τις πλειάδες της R που έχουν στα κοινά χαρακτηριστικά Β όλες τις τιμές που εμφανίζονται στις πλειάδες της σχέσης S. Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

70 Παράδειγμα σχεσιακής διαίρεσης (1)
Η σχέση ΑΥΤΟΚΙΝΗΤΟ δείχνει τα αυτοκίνητα που υπάρχουν σε μία εταιρεία διανομών Η σχέση ΔΙΑΝΟΜΗ δείχνει ποια αυτοκίνητα έχουν χρησιμοποιήσει οι οδηγοί της εταιρείας. ΑΥΤΟΚΙΝΗΤΟ ΔΙΑΝΟΜΗ ΑριθμόςΚυκλοφορίας ΕΡΗ 1234 ΥΑΑ 2345 ΝΕΑ 3455 Κωδικός Οδηγού ΑρΚυκλοφορίας 1 ΕΡΗ 1234 ΝΕΑ 3455 2 ΥΑΑ 2345 Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

71 Παράδειγμα σχεσιακής διαίρεσης (2)
Στο παράδειγμα αυτό ισχύουν οι προϋποθέσεις της διαίρεσης αφού: Οι συμμετέχουσες σχέσεις έχουν ένα κοινό χαρακτηριστικό (τον αριθμό κυκλοφορίας). Το σύνολο των χαρακτηριστικών της σχέσης ΑΥΤΟΚΙΝΗΤΟ (ΑριθμόςΚυκλοφορίας) είναι υποσύνολο του συνόλου των χαρακτηριστικών της σχέσης ΔΙΑΝΟΜΗ (ΚωδικόςΟδηγού, ΑρΚυκλοφορίας). ΑΥΤΟΚΙΝΗΤΟ ΔΙΑΝΟΜΗ ΑριθμόςΚυκλοφορίας ΕΡΗ 1234 ΥΑΑ 2345 ΝΕΑ 3455 Κωδικός Οδηγού ΑρΚυκλοφορίας 1 ΕΡΗ 1234 ΝΕΑ 3455 2 ΥΑΑ 2345 Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

72 ΔΙΑΝΟΜΗ  ΑΥΤΟΚΙΝΗΤΟ ΑΥΤΟΚΙΝΗΤΟ ΔΙΑΝΟΜΗ ΔΙΑΝΟΜΗ  ΑΥΤΟΚΙΝΗΤΟ
Η νέα σχέση θα έχει ως χαρακτηριστικά τα χαρακτηριστικά της σχέσης ΔΙΑΝΟΜΗ που δεν ανήκουν στη σχέση ΑΥΤΟΚΙΝΗΤΟ. Άρα, η σχέση ΔΙΑΝΟΜΗ  ΑΥΤΟΚΙΝΗΤΟ θα έχει ως μοναδικό χαρακτηριστικό τον ΚωδικόΟδηγού. Τέλος, η νέα σχέση θα έχει ως πλειάδες όλες τις πλειάδες της σχέσης ΔΙΑΝΟΜΗ, οι οποίες έχουν στο χαρακτηριστικό ΑριθμόςΚυκλοφορίας όλες τις τιμές που εμφανίζονται στον αριθμό κυκλοφορίας της σχέσης ΑΥΤΟΚΙΝΗΤΟ. ΑΥΤΟΚΙΝΗΤΟ ΔΙΑΝΟΜΗ ΔΙΑΝΟΜΗ  ΑΥΤΟΚΙΝΗΤΟ ΑριθμόςΚυκλοφορίας ΕΡΗ 1234 ΥΑΑ 2345 ΝΕΑ 3455 Κωδικός Οδηγού ΑρΚυκλοφορίας 1 ΕΡΗ 1234 ΝΕΑ 3455 2 ΥΑΑ 2345 ΚωδικόςΟδηγού 2 Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

73 Αθροιστικές συναρτήσεις
Ορισμένοι αναγκαίοι υπολογισμοί, που είναι συχνοί στην καθημερινή χρήση μίας βάσης δεδομένων, δεν υποστηρίζονται από τις βασικές πράξεις της σχεσιακής άλγεβρας. Για τον υπολογισμό τέτοιων υπολογισμών, η σχεσιακή άλγεβρα παρέχει τις παρακάτω αθροιστικές συναρτήσεις: COUNT: απαριθμεί το πλήθος των εγγραφών SUM: υπολογίζει το άθροισμα μίας στήλης ή μίας αριθμητικής παράστασης ΜΙΝ: υπολογίζει το ελάχιστο ενός αριθμητικού χαρακτηριστικού MAX: υπολογίζει το μέγιστο ενός αριθμητικού χαρακτηριστικού AVG: υπολογίζει τον μέσο όρο ενός αριθμητικού χαρακτηριστικού Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

74 Συμβολισμός αθροιστικής συνάρτησης
Μία αθροιστική συνάρτηση ορίζεται με το συμβολισμό Fσυνάρτηση όπου: συνάρτηση είναι μία από τις αθροιστικές συναρτήσεις Το αποτέλεσμα της συνάρτησης είναι μία σχέση που περιέχει την τιμή της συνάρτησης. Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

75 1Ο Παραδείγματα χρήσης αθροιστικών συναρτήσεων
Για να βρούμε το πλήθος των προϊόντων που υπάρχουν στον πίνακα ΠΡΟΪΟΝΤΑ χρησιμοποιούμε την αθροιστική συνάρτηση: FCOUNT(Κωδικός) FCOUNT(Κωδικός) ΠΡΟΪΟΝΤΑ Κωδι- κός Περιγραφή Τιμή Αγοράς Από- θεμα Κατη- γορία 1003 Μαρκαδόρος 1,3 130 1 1006 CD Audio 1,2 84 2 1002 Μολύβι 250 1005 CD ROM 315 1004 Δισκέτα 3,5’’ 0,8 120 1001 Στυλό 0,75 200 COUNT(ΚωδιΚός) 6 Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

76 2Ο Παραδείγματα χρήσης αθροιστικών συναρτήσεων
Για να βρούμε τη μέση τιμή του αποθέματος των προϊόντων χρησιμοποιούμε την αθροιστική συνάρτηση: FAVERAGE(Απόθεμα) FAVERAGE(Απόθεμα) ΠΡΟΪΟΝΤΑ Κωδι- κός Περιγραφή Τιμή Αγοράς Από- θεμα Κατη- γορία 1003 Μαρκαδόρος 1,3 130 1 1006 CD Audio 1,2 84 2 1002 Μολύβι 250 1005 CD ROM 315 1004 Δισκέτα 3,5’’ 0,8 120 1001 Στυλό 0,75 200 AVERAGE (Απόθεμα) 184 Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

77 Ομαδοποίηση εγγραφών Πολλές φορές είναι απαραίτητο να θεωρήσουμε ότι μία σχέση αποτελείται από ομάδες πλειάδων, όπου κάθε ομάδα ξεχωρίζει από την άλλη ανάλογα με την τιμή που έχει σε κάποιο χαρακτηριστικό της σχέσης. Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

78 Παράδειγμα ομαδοποίησης εγγραφών πίνακα
Μπορούμε —εάν αυτό είναι βολικό— να θεωρήσουμε ότι η σχέση αυτή αποτελείται από δύο ομάδες πλειάδων: η μία ομάδα (ομάδα Α) περιλαμβάνει τα προϊόντα που ανήκουν στην κατηγορία 1 η άλλη ομάδα (ομάδα Β) τα προϊόντα που ανήκουν στην κατηγορία 2. ΠΡΟΪΟΝΤΑ Κωδι- κός Περιγραφή Τιμή Αγοράς Από- Θεμα Κατη- γορία 1001 Στυλό 0,75 200 1 1002 Μολύβι 250 1003 Μαρκαδόρος 1,3 135 1004 Δισκέτα 3,5’’ 0,8 120 2 1005 CD ROM 315 1006 CD Audio 1,2 84 Ομάδα Α (Κατηγορία = 1) Ομάδα Β (Κατηγορία = 2) Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

79 Αθροιστική συνάρτηση με ομαδοποίηση
Στη σχεσιακή άλγεβρα, είναι δυνατό οι συγκεντρωτικές συναρτήσεις να υπολογίζονται για κάθε ομάδα χωριστά. Αυτό γίνεται με χρήση του συμβολισμού: ομαδοποίησηFσυνάρτηση, όπου η ομαδοποίηση που εμφανίζεται αριστερά του συμβόλου F δηλώνει το χαρακτηριστικό με βάση το οποίο γίνεται ο διαχωρισμός του πίνακα στις επιμέρους ομάδες Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής

80 Παράδειγμα αθροιστικής συνάρτησης με ομαδοποίηση
Ο μέσος όρος του αποθέματος για κάθε κατηγορία προϊόντων ξεχωριστά υπολογίζεται από την έκφραση: κατηγορία F AVERAGE(Απόθεμα) το αποτέλεσμα εμφανίζεται ως μορφή πίνακα: κατηγορία F AVERAGE(Απόθεμα) ΠΡΟΪΟΝΤΑ Κωδι- κός Περιγραφή Τιμή Αγοράς Από- Θεμα Κατη- γορία 1001 Στυλό 0,75 200 1 1002 Μολύβι 250 1003 Μαρκαδόρος 1,3 135 1004 Δισκέτα 3,5’’ 0,8 120 2 1005 CD ROM 315 1006 CD Audio 1,2 84 Κατηγορία AVERAGE (Απόθεμα) 1 195 2 173 Σχεσιακές Βάσεις Δεδομένων Δρ. Ε. Κεχρής


Κατέβασμα ppt "ΣΧΕΣΙΑΚΕΣ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ"

Παρόμοιες παρουσιάσεις


Διαφημίσεις Google