ΚΕΝΤΡΟ ΠΛΗ.ΝΕ.Τ. Ν. ΦΛΩΡΙΝΑΣ

Εισαγωγή στη Σχεσιακή Άλγεβρα

          

Εισαγωγή στη Σχεσιακή Άλγεβρα

Με τη βοήθεια του σχεσιακού μοντέλου δεδομένων είχαμε μια επανάσταση στον σχεδιασμό των βάσεων δεδομένων, καθώς για πρώτη φορά μπορέσαμε να περιγράψουμε τις βάσεις δεδομένων με αυστηρές μαθηματικές έννοιες. Το σχεσιακό μοντέλο είναι ένα σύστημα, τα δομικά (θεμελιώδη) στοιχεία του οποίου είναι οι σχέσεις, οι οποίες μας είναι γνωστές ως πίνακες (tables).

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

Εκτός από τις παραπάνω βασικές πράξεις, υπάρχουν και τρεις ακόμα σύνθετες πράξεις, οι οποίες εκφράζονται με τη βοήθεια των βασικών πράξεων και είναι οι εξής :

 

Η Πράξη της Επιλογής (Selection)

Με την πράξη της Επιλογής επιλέγουμε να εμφανίσουμε κάποιες συγκεκριμένες εγγραφές από μια σχέση, οι οποίες ικανοποιούν κάποια κριτήρια που έχουμε θέσει. Η πράξη της Επιλογής συμβολίζεται με το σ και μπορούμε να δώσουμε τον ορισμό ότι Επιλογή είναι η θεμελιώδης πράξη που εφαρμόζεται σε μια σχέση και έχει ως αποτέλεσμα μια καινούργια σχέση, η οποία περιέχει ορισμένες μόνο πλειάδες (γραμμές ή εγγραφές) της αρχικής σχέσης που ικανοποιούν μια ορισμένη συνθήκη (κατηγόρημα).

Για παράδειγμα, η αλγεβρική πράξη σβαθμός>10(ΜΑΘΗΤΗΣ), εμφανίζει εκείνους μόνο τους μαθητές, μ’ όλα τα στοιχεία (πεδία) του καθενός βέβαια, που έχουν βαθμό μεγαλύτερο από 10.

Η αλγεβρική πράξη συπόλοιπο>1000(ΠΕΛΑΤΗΣ), εμφανίζει εκείνους μόνο τους πελάτες μιας επιχείρησης, μ’ όλα τα στοιχεία (πεδία) του καθενός βέβαια, που έχουν υπόλοιπο μεγαλύτερο από 1000 €.

Η αλγεβρική πράξη σπόλη="ΦΛΩΡΙΝΑ"(ΠΕΛΑΤΗΣ), εμφανίζει εκείνους μόνο τους πελάτες μιας επιχείρησης, μ’ όλα τα στοιχεία (πεδία) του καθενός βέβαια, που μένουν στην πόλη της Φλώρινας.

 

Η Πράξη της Προβολής (Projection)

Με την πράξη της Προβολής επιλέγουμε να εμφανίσουμε κάποιες συγκεκριμένες στήλες (πεδία) από μια σχέση. Η πράξη της Προβολής συμβολίζεται με το Π και μπορούμε να δώσουμε τον ορισμό ότι Προβολή είναι η θεμελιώδης πράξη που εφαρμόζεται σε μια σχέση και έχει ως αποτέλεσμα μια καινούργια σχέση, η οποία περιέχει ορισμένες μόνο στήλες (πεδία) της αρχικής σχέσης.

Για παράδειγμα, η αλγεβρική πράξη Πεπώνυμο, όνομα, τάξη(ΜΑΘΗΤΗΣ), εμφανίζει μόνο τα πεδία επώνυμο, όνομα και τάξη όλων των μαθητών.

Η αλγεβρική πράξη Πεπώνυμο, όνομα, πόλη(ΠΕΛΑΤΗΣ), εμφανίζει μόνο τα πεδία επώνυμο, όνομα και πόλη όλων των πελατών μιας επιχείρησης.

  

Η Πράξη του Καρτεσιανού Γινομένου

Η πράξη του Καρτεσιανού Γινομένου είναι ανάλογη με την γνωστή πράξη του πολλαπλασιασμού και μπορούμε να την εφαρμόσουμε σε δύο ή και σε περισσότερες σχέσεις για να συνδυάσουμε τα δεδομένα τους.

Για παράδειγμα, ας θεωρήσουμε έναν πίνακα (σχέση) που περιέχει στοιχεία για 6 διεθνείς αγώνες στίβου, με πεδία ΚωδικόςΑγώνα, Πόλη, Χώρα, Ημερομηνία και έναν άλλον πίνακα (σχέση) που περιέχει στοιχεία για 8 αθλητές, με πεδία ΚωδικόςΑθλητή, Ονοματεπώνυμο, Χώρα.

Για να δημιουργήσουμε το καρτεσιανό γινόμενο του πίνακα των Αγώνων Στίβου με τον πίνακα των Αθλητών, θα πρέπει να δημιουργήσουμε μια καινούργια σχέση με 6 Χ 8 = 48 πλειάδες (εγγραφές), όπου ο κάθε Αγώνας Στίβου θα συνδυάζεται μ’ όλους τους αθλητές, και 4 + 3 = 7 στήλες (πεδία), όπου απλά θα παρατάξουμε τα πεδία στη σειρά και θα χρησιμοποιήσουμε ένα κατάλληλο πρόθεμα για το πεδίο Χώρα, που είναι κοινό στους δύο πίνακες.

Η πράξη του Καρτεσιανού Γινομένου ανάμεσα σε δύο σχέσεις R και S, συμβολίζεται με Χ (RXS) και δημιουργεί μια καινούργια σχέση η οποία αποτελείται απ’ όλους τους δυνατούς συνδυασμούς κάθε εγγραφής της σχέσης R με κάθε εγγραφή της σχέσης S.

 

Η Πράξη της Ένωσης (Union)

Η πράξη της Ένωσης ανάμεσα σε δύο σχέσεις R και S, συμβολίζεται με U (RUS) και δημιουργεί μια καινούργια σχέση η οποία αποτελείται απ’ όλες τις εγγραφές και των δύο σχέσεων, με την προϋπόθεση φυσικά να μην υπάρχουν διπλότυπες εγγραφές και οι δύο σχέσεις να έχουν τα ίδια ακριβώς πεδία και σε πλήθος και σε τύπο δεδομένων.

Αν δύο σχέσεις δεν είναι συμβατές κατά την ένωση (union-compatible), μπορούμε να χρησιμοποιήσουμε την πράξη της προβολής για να απομονώσουμε (αφαιρέσουμε) όσα πεδία χρειασθεί, έτσι ώστε να μπορέσει να γίνει η ένωση των δύο σχέσεων.

Για παράδειγμα, αν μια σχέση με όνομα ΓιατροίΠαθολογικήςΚλινικής περιέχει τα πεδία ΚωδικόςΓιατρού, Επώνυμο, Όνομα, Ειδικότητα, Βαθμός, Ημερομηνία Πρόσληψης, τότε για να μπορέσει να γίνει ένωση αυτής της σχέσης με μια σχέση με όνομα ΓιατροίΚαρδιολογικήςΚλινικής, θα πρέπει και η δεύτερη σχέση να περιέχει τα ίδια ακριβώς πεδία. Αν τυχόν υπάρχουν Γιατροί που είναι γραμμένοι και στις δύο Κλινικές, τα στοιχεία τους θα εμφανισθούν μία μόνο φορά στην καινούργια σχέση της ένωσης.

 

Η Πράξη της Διαφοράς (Difference)

Η πράξη της Διαφοράς ανάμεσα σε δύο σχέσεις R και S, συμβολίζεται με – (RS) και δημιουργεί μια καινούργια σχέση η οποία αποτελείται απ’ όλες τις εγγραφές που βρίσκονται στην πρώτη αλλά όχι και στη δεύτερη σχέση, με την προϋπόθεση φυσικά και οι δύο σχέσεις να έχουν τα ίδια ακριβώς πεδία και σε πλήθος και σε τύπο δεδομένων.

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

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

 

 

back.gif (9867 bytes)

Επιστροφή