ΣΧΕΣΙΑΚΗ ΑΛΓΕΒΡΑ 2 ΜΑΘΗΜΑ 4
ΣΥΖΕΥΞΗ Έστω μια σχέση r με σχήμα {Χ,Υ} και μίας σχέση s με σχήμα {Y,Z}, φυσική σύζευξη (ή εσωτερική σύζευξη) είναι μια σχέση με σχήμα {Χ,Υ,Ζ} και κορμό το σύνολο των συνδυασμών των πλειάδων των R και S για τις οποίες οι τιμές στο κοινό γνώρισμα Υ ταυτίζονται. Δηλαδή μια πλειάδα της r θα συνδυαστεί με μια πλειάδα της s αν και μόνο αν οι τιμές στο κοινό γνώρισμα Υ ταυτίζονται μεταξύ τους. r NATURAL JOIN s Ή r JOIN s
ΣΥΖΕΥΞΗ (ΣΥΝΕΧΕΙΑ) Ισχύει η αντιμεταθετική ιδιότητα. Αλλά και η προσεταιριστική ιδιότητα: Ή αλλιώς
ΣΥΖΕΥΞΗ θ Εάν έχουμε μια σχέση r με σχήμα {Α1,Α2,…Αn}, και μια σχέση s με σχήμα {Β1,Β2,…Βn}, τα γνωρίσματα Ai και Βj έχουν το ίδιο πεδίο ορισμού και θ είναι ένας τελεστής σύγκρισης με τότε η σύζευξη θ (θ JOIN) των R και S είναι μία σχέση με σχήμα το σύνολο των γνωρισμάτων των R και S {Α1,Α2,…Αn,Β1,Β2,…Βn} και κορμό το σύνολο των πλειάδων από κάθε συνδυασμό των πλειάδων των R και S που ικανοποιούν την συνθήκη Ai θ Βj . (rXs) WHERE Ai θ Βj
ΕΞΩΤΕΡΙΚΗ ΣΥΖΕΥΞΗ Η εξωτερική σύζευξη δίνει ως αποτέλεσμα ότι και η εσωτερική, αλλά και κάτι επιπλέον: δίνει πλειάδες από την μία ή την άλλη σχέση που δεν έχουν ταιριαστές τιμές. Αν υπάρχουν τέτοιες πλειάδες θα εμφανιστούν στο αποτέλεσμα της εξωτερικής σύζευξης.
ΕΞΩΤΕΡΙΚΗ ΣΥΖΕΥΞΗ (ΣΥΝΕΧΕΙΑ) Αν r είναι μια σχέση με σχήμα R={A1,A2,…An,B1,B2,…Bk} και η s είναι μια σχέση με σχήμα S={B1,B2,…Bk,C1,C2,…Cm}, τότε η εξωτερική σύζευξη t θα έχει σχήμα T={A1,A2,…An,C1,C2,…Cm} και κορμό που αποτελείται από πλειάδες t που είναι: Πλειάδες των r και s που εμφανίζονται στην εσωτερική σύζευξη, Πλειάδες της σχέσης r που δεν έχουν ταιριαστές τιμές στη σχέση s με τιμές NULL στα γνωρίσματα της σχέσης s, Πλειάδες της σχέσης s που δεν έχουν ταιριαστές τιμές στη σχέση r με τιμές NULL στα γνωρίσματα της σχέσης r.
ΑΡΙΣΤΕΡΗ ΕΞΩΤΕΡΙΚΗ ΣΥΖΕΥΞΗ Η αριστερή εξωτερική σύζευξη (ή απλώς αριστερή σύζευξη) μεταξύ δύο σχέσεων r και s έχει ως αποτέλεσμα μια σχέση με: Σχήμα όμοιο με αυτό της φυσικής σύζευξης Κορμό τις πλειάδες που προκύπτουν από την ένωση των πλειάδων : της φυσικής σύζευξης όλων των πλειάδων της r (αριστερής σχέσης) που δεν υπάρχουν στο αποτέλεσμα της φυσικής σύζευξης, με τιμές NULL στα γνωρίσματα της s (δεξιάς σχέσης).
ΔΕΞΙΑ ΕΞΩΤΕΡΙΚΗ ΣΥΖΕΥΞΗ Η δεξιά εξωτερική σύζευξη (ή απλώς δεξιά σύζευξη) μεταξύ δύο σχέσεων r και s έχει ως αποτέλεσμα μια σχέση με: Σχήμα όμοιο με αυτό της φυσικής σύζευξης Κορμό τις πλειάδες που προκύπτουν από την ένωση των πλειάδων : της φυσικής σύζευξης όλων των πλειάδων της s (δεξιάς σχέσης) που δεν υπάρχουν στο αποτέλεσμα της φυσικής σύζευξης, με τιμές NULL στα γνωρίσματα της r (αριστερής σχέσης).
ΔΙΑΙΡΕΣΗ Αν r είναι μια σχέση με σχήμα R={A1,A2,…Am,B1,B2,…Bn} και η s είναι μια σχέση με σχήμα S={B1,B2,…Bn} τότε το αποτέλεσμα της διαίρεσης είναι μια σχέση t με σχήμα {A1,A2,…Am} , ή αλλιώς είναι μια σχέση με σχήμα τη διαφορά R-S (εκείνα τα γνωρίσματα της r που δεν ανήκουν στην s). Ο κορμός της t αποτελείται από εκείνες τις πλειάδες της σχέσης r για τις οποίες τα κοινά γνωρίσματα {B1,B2,…Bn} της r με την s έχουν τιμές που ταυτίζονται.
ΣΥΝΟΨΗ Η σύνοψη (ή αλλιώς ομαδοποίηση) ομαδοποιεί πλειάδες μιας σχέσης με βάση κοινές τιμές σε ένα ή περισσότερα γνωρίσματα. Σε κάθε ένα από τα υποσύνολα των πλειάδων που προκύπτουν μπορεί να εφαρμοστεί μια συναθροιστική συνάρτηση (aggregating function), όπως η καταμέτρηση του πλήθους ή ο υπολογισμός του μέσου όρου.
ΣΥΝΑΡΤΗΣΕΙΣ ΣΥΝΑΘΡΟΙΣΗΣ COUNT Επιστέφει το πλήθος των εγγραφών. SUM Υπολογίζει και επιστρέφει το άθροισμα ενός αριθμητικού γνωρίσματος. AVG Υπολογίζει και επιστρέφει το μέσο όρο ενός αριθμητικού γνωρίσματος. MIN Επιστρέφει την μικρότερη τιμή. MAX Επιστρέφει την μεγαλύτερη τιμή.
ΕΝΗΜΕΡΩΣΗ Εκτός από τις πράξεις επιλογής στη σχεσιακή άλγεβρα υπάρχουν και πράξεις ενημέρωσης της βάσης δεδομένων. Αυτές είναι: Εισαγωγή δεδομένων στις σχέσεις, δηλαδή εισαγωγή μιας ή περισσοτέρων πλειάδων . Η πληθικότητα της σχέσης (το πλήθος των πλειάδων) αυξάνεται μετά την εισαγωγή. Διαγραφή δεδομένων από τις σχέσεις, δηλαδή απαλοιφή μιας ή περισσοτέρων πλειάδων από τη σχέση. Η πληθικότητα της σχέσης μειώνεται μετά την διαγραφή. Τροποποίηση δεδομένων στις σχέσεις, δηλαδή αλλαγές στις τιμές των γνωρισμάτων μιας σχέσης. Η πληθικότητα της σχέσης δεν μεταβάλλεται μετά την τροποποίηση.
ΕΙΣΑΓΩΓΗ Στην SQL με την εντολή : INSERT Εισαγωγή δεδομένων στην βάση σημαίνει εισαγωγή μιας πλειάδας (ή περισσότέρων) σε μία σχέση. Πλειάδα είναι ένα σύνολο τιμών που αντιστοιχούν στα γνωρίσματα μιας σχέσης. Επομένως υπάρχει πάντα ο περιορισμός της σωστής αντιστοίχησης , Καθώς επίσης και της σχεσιακής ακεραιότητας των δεδομένων: κάθε τιμή της προς εισαγωγή πλειάδας πρέπει να ανήκει στο πεδίου ορισμού του γνωρίσματος. Η εισαγωγή δεδομένων Ε στη σχέση r γράφεται: Στην SQL με την εντολή : INSERT
ΔΙΑΓΡΑΦΗ Στην SQL με την εντολή : DELETE Διαγραφή δεδομένων από την βάση σημαίνει διαγραφή μιας πλειάδας (ή περισσοτέρων) από κάποια σχέση. Αυτό που διαγράφεται είναι το σύνολο των τιμών μιας πλειάδας και όχι κάποια μεμονωμένη τιμή. Διαγραφή δεδομένων Ε από μια σχέση r γράφεται: Στην SQL με την εντολή : DELETE
ΤΡΟΠΟΠΟΙΗΣΗ Η τροποποίηση αφορά στην αλλαγή κάποιων τιμών μιας πλειάδας που ανήκει σε μια σχέση. Μετά από την τροποποίηση η πληθικότητα της σχέσης ούτε αυξάνεται ούτε μειώνεται, απλώς αλλάζουν οι τιμές. Η τροποποίηση γράφεται: F1,F2,…Fn (r) Στην SQL με την εντολή : UPDATE