Βάσεις Δεδομένων (Databases)

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

Διδάσκων: Παναγιώτης Ανδρέου

Lecture 8: RM I + RA I

Βάσεις Δεδομένων (Databases)

Σχεσιακή Άλγεβρα και Σχεσιακός Λογισμός. Σχεσιακή Άλγεβρα Σχεσιακός Λογισμός

Βάσεις Δεδομένων (Databases)

Βάσεις Δεδομένων (Databases)

Διάλεξη 10: Σχεσιακή Άλγεβρα και Σχεσιακός Λογισμός (Relational Algebra/Calculus) ΙI

Βάσεις Δεδομένων. Σχεσιακό Μοντέλο Δεδομένων. Βασίλειος Βεσκούκης Ορισμός Βάσης Δεδομένων Δομή Περιορισμοί

Βάσεις Δεδομένων Ενότητα 6

Kεφ.2: Σχεσιακό Μοντέλο (επανάληψη) Κεφ.6.1: Σχεσιακή Άλγεβρα

Διάλεξη 13: Γλώσσα Επεξεργασίας Δεδομένων/ Data Manipulation Language (SQL DML) I. Διδάσκων: Παναγιώτης Ανδρέου

Βάσεις Δεδομένων (Databases)

Βάσεις Δεδομένων (Databases)

Εισαγωγή στις Βάσεις Δεδομζνων II

ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ Σχεσιακός Ορισµός. Μαθ. #12

ΗΥ-360 Αρχεία και Βάσεις Δεδομένων Διδάσκων: Δ. Πλεξουσάκης. Φροντιστήριο SQL Examples ΙΙ Ξένου Ρουμπίνη

ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ (Relational Model) Μαθ. #10

ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ Relational Model. SQL Μαθ. #11

Βάσεις Δεδομένων Σύνθετα SQL queries. Ψευδώνυμα (Aliases) (2) Ψευδώνυμα (Aliases) (1) Ασάφεια και Πλήρη Ονόματα. Ερώτημα χωρίς τον όρο WHERE (1)

Βάσεις Δεδομένων Σύνθετα SQL queries

Lecture 16: SQL DML III

Τελεστής Προβολής - Παράδειγμα. Π Πόλη, Εξάμηνο (Φοιτητές)

Βάσεις Δεδομένων Προχωρημένα Ερωτήματα SQL

Βάσεις Δεδομένων. Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι

Περιεχόμενα. Βάσεις Δεδομένων Προχωρημένα Ερωτήματα SQL. Συνένωση Σχέσεων στην SQL2 (3) Συνένωση Σχέσεων στην SQL2. (Join Relations Feature in SQL)

Query-by-Example (QBE)

Βάσεις δεδομένων. (7 ο μάθημα) Ηρακλής Βαρλάμης

Lecture 14: SQL DML I

Σχεσιακή Άλγεβρα Σχεδιασμός Βάσεων Δεδομένων

Διάλεξη 14: Γλώσσα Επεξεργασίας Δεδομένων/ Data Manipulation Language (SQL DML) II. Διδάσκων: Παναγιώτης Ανδρέου

Σχεσιακή Άλγεβρα Relational Algebra

#5. Σχεσιακό Μοντέλο

Φροντιστήριο Σχεσιακή Άλγεβρα (μέρος 2 ο ) - Σχεσιακός Λογισμός Δημητράκη Κατερίνα

Department of Computer Science University of Cyprus. EPL342 Databases. Lecture 10: RA IΙ. RA Advanced + Examples

Βάσεις Δεδομένων Ευαγγελία Πιτουρά 2. Εννοιολογικός Σχεδιασμός Βάσεων εδομένων (με χρήση του Μοντέλου Οντοτήτων/Συσχετίσεων)

Βάσεις Δεδομένων (Databases)

Βάσεις Δεδομένων Ευαγγελία Πιτουρά 2. Εννοιολογικός Σχεδιασμός Βάσεων εδομένων (με χρήση του Μοντέλου Οντοτήτων/Συσχετίσεων)

Βάσεις Δεδομένων (Databases)

Διάλεξη 06: Σχεσιακό Μοντέλο I (Relational Data Model) Διδάσκων: Παναγιώτης Ανδρέου

ΗΥ-360 Αρχεία και Βάσεις Δεδομένων Διδάσκων: Δ. Πλεξουσάκης. Φροντιστήριο SQL Examples Ξένου Ρουμπίνη

ΗΥ360 Αρχεία και Βάσεις Δεδομένων. Φροντιστήριο στην Σχεσιακή Άλγεβρα.

ΗΥ360: Αρχεία και Βάσεις Δεδομένων Διδάσκων: Πλεξουσάκης Δημήτρης. Φροντιστήριο Σχεσιακή Άλγεβρα Δημητράκη Κατερίνα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι

Βάσεις δεδομένων. (6 ο μάθημα) Ηρακλής Βαρλάμης

Βάσεις δεδομένων. (4 ο μάθημα) Ηρακλής Βαρλάμης

Βάσεις δεδομένων. (8 ο μάθημα) Ηρακλής Βαρλάμης

Οργάνωση Βάσεων Βιοϊατρικών Δεδομένων Εξόρυξη Γνώσης Βιοϊατρικών Δεδομένων. Σεμινάριο 3: Σχεσιακή Άλγεβρα

SQL Data Manipulation Language

Σύβακας Σταύρος ΠΕ19,MSc. IT ΣΥΒΑΚΑΣ ΣΤΑΥΡΟΣ ΕΡΩΤΗΜΑΤΑ

Πανεπιστήμιο Κρήτης Τμήμα Επιστήμης Υπολογιστών. Σχεσιακός Λογισμός

Αρχεία και Βάσεις Δεδομένων

Διάλεξη 07: Σχεσιακό Μοντέλο II (Relational Data Model) Διδάσκων: Παναγιώτης Ανδρέου

Σχεσιακή Άλγεβρα. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Βάσεις δεδομένων. (5 ο μάθημα) Ηρακλής Βαρλάμης

Σχεσιακή Άλγεβρα. Βάσεις Δεδομένων : Σχεσιακή Άλγεβρα 1

Οργάνωση Βάσεων Βιοϊατρικών Δεδομένων Εξόρυξη Γνώσης Βιοϊατρικών Δεδομένων. Σεμινάριο 7: Αλγόριθμοι για επεξεργασία ερωτήσεων και βελτιστοποίηση

Σχεσιακή Άλγεβρα. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Πράξεις στο Σχεσιακό Μοντέλο

Σχεσιακή Άλγεβρα. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Σχεσιακός Λογισμός. Σχεσιακός Λογισμός Πλειάδων. σχεσιακά πλήρης γλώσσα

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ. Επιλέγει όλες τις πλειάδες, από μια σχέση R, που ικανοποιούν τη συνθήκη επιλογής.

Επεξεργασία ερωτημάτων

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι. Ενότητα 6: SQL (Συζεύξεις, Εμφώλευση, Ομαδοποίηση) Ευαγγελίδης Γεώργιος. Τμήμα Εφαρμοσμένης Πληροφορικής ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι

Αρχεία και Βάσεις Δεδομένων

Βάσεις Δεδομένων ΗγλώσσαSQL (Structured Query Language)

BΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΕΞΕΤΑΣΗ ΦΕΒΡΟΥΑΡΙΟΥ 2005

Σχεσιακή Άλγεβρα. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι


S Q Q L L -- SQL (Structured Query Language) select insert update delete 2.47

Οργάνωση Βάσεων Βιοϊατρικών Δεδομένων Εξόρυξη Γνώσης Βιοϊατρικών Δεδομένων. Σεμινάριο 4: Σχεσιακός Λογισμός

Επεξεργασία Ερωτήσεων

Κεφάλαιο 10 Άλλες Πράξεις Θεωρίας Συνόλων

Βάσεις Δεδομένων Η γλώσσα SQL (Structured Query Language) Εισαγωγή στην SQL (2) Ιστορικά Στοιχεία. SQL - Structured Query Language (1)

Βάσεις Δεδομένων. Βασίλειος Βεσκούκης Εισαγωγή στη γλώσσα SQL (Structured Query Language) Η γλώσσα SQL

Τμήμα Πληροφορικής ΑΠΘ

Επεξεργασία Ερωτήσεων

Εισαγωγή στην. Εισαγωγή Σ Β. Αρχεία ευρετηρίου Κατάλογος. συστήματος. Αρχεία δεδομένων

Η SQL ως γλώσσα ερωτημάτων. Υπενθυμίζουμε: Σχέση = Πίνακας Πλειάδα = Εγγραφή = Γραμμή (Πίνακα) Πεδίο = Γνώρισμα (Σχέσης) = Στήλη (Πίνακα)

Επεξεργασία Ερωτήσεων

Εισαγωγή στις Βάσεις Δεδομζνων II

Βάσεις Δεδομένων. Εργαστήριο ΙV. Τμήμα Πληροφορικής ΑΠΘ

Σχεσιακή Άλγεβρα. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Department of Computer Science University of Cyprus. EPL342 Databases. Lecture 8: RM II. Relational Model. (Chapter )

ΦΡΟΝΤΙΣΤΗΡΙΟ ΣΤΗ ΓΛΩΣΣΑ SQL

Βάσεις εδοµένων Ευαγγελία Πιτουρά 2. Εννοιολογικός Σχεδιασµός Βάσεων Δεδοµένων (µε χρήση του Μοντέλου Οντοτήτων/Συσχετίσεων)

Εισαγωγή στην Επεξεργασία Ερωτήσεων. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Βάσεις Δεδομένων. Σχεσιακή Άλγεβρα. Φροντιστήριο 4 ο

Σχεσιακή Άλγεβρα. Προγράμματα που απαντούν σε επερωτήσεις για τον τρέχον στιγμιότυπο της βάσης δεδομένων (querying)

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ - ΣΧΕΣΙΑΚΗ ΑΛΓΕΒΡΑ

Εισαγωγή στην Επεξεργασία Ερωτήσεων. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι. Ενότητα 7α: SQL (NULL, Διαίρεση) Ευαγγελίδης Γεώργιος. Τμήμα Εφαρμοσμένης Πληροφορικής ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι

ΦΡΟΝΤΙΣΤΗΡΙΟ ΣΤΗ ΓΛΩΣΣΑ SQL

SQL: Αιτήματα. Κεφάλαιο 5. Database Management Systems, R. Ramakrishnan and J. Gehrke

Κεφάλαιο 3. ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ B Μέρος. Tο Σχεσιακό Μοντέλο Σελίδα 1

Σχεσιακή Άλγεβρα. Εισαγωγή. Εισαγωγή. Εισαγωγή. Παράδειγμα. Εισαγωγή. Ταινία Τίτλος Έτος Διάρκεια Είδος. Παίζει Όνομα-Ηθοποιού Τίτλος Έτος.

Βάσεις εδοµένων Ευαγγελία Πιτουρά 2

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι. Ενότητα 5: SQL (Απλή SELECT) Ευαγγελίδης Γεώργιος. Τμήμα Εφαρμοσμένης Πληροφορικής ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι

Transcript:

Βάσεις Δεδομένων (Databases) ΕΠΛ 342 Χειμερινό Εξάμηνο 2011 Διδάσκοντες Καθηγητές Γιώργος Σαμάρας (ΧΩΔ01 109)

θεωρητικές Γλώσσες Ερωτήσεων (Formal Query Languages): Σχεσιακή Άλγεβρα Τελεστές Θεωρίας Συνόλων Συγκεκριμένοι Σχεσιακοί Τελεστές Τελεστές Ενημέρωσης

Τυπικές Γλώσσες Σχεσιακού Μοντέλου (Formal Languages for the Relational Model) Για την εκτέλεση επερωτήσεων σε σχέσεις ορίζονται οι ακόλουθες τυπικές (θεωρητικές) γλώσσες: Σχεσιακή Άλγεβρα (Relational Algebra) Λογισμός Πλειάδων (Tuple Relational Calculus) Λογισμός Πεδίων (Domain Relational Calculus) Αυτές οι γλώσσες είναι εκφραστικά ισοδύναμες! Δηλαδή μπορούν να εκφράσουν αντίστοιχες επερωτήσεις. Οποιαδήποτε γλώσσα είναι εκφραστικά ισοδύναμη με την Σχεσιακή Άλγεβρα ονομάζεται Σχεσιακά Πλήρης Γλώσσα (Relationally-Complete Language) Η SQL είναι μια relationally complete γλώσσα

Τυπικές Γλώσσες Σχεσιακού Μοντέλου (Formal Languages for the Relational Model) Πάνω σε αυτές τις θεωρητικές γλώσσες έχουν δημιουργηθεί πραγματικές γλώσσες βάσεων δεδομένων (π.χ., SQL, QBE) Σχεσιακή Άλγεβρα (Relational Algebra) Προστακτική: ορίζεται η σειρά εκτέλεσης των πράξεων. Μια Επερώτηση του χρήστη σε SQL μεταφράζεται από την βάση σε μια έκφραση σχεσιακής άλγεβρας, το λεγόμενο πλάνο εκτέλεσης (query plan). Λογισμός Πλειάδων (Tuple Calculus) Δηλωτική: δεν ορίζεται η σειρά εκτέλεσης των πράξεων απλά το επιθυμητό αποτέλεσμα, Η SQL στηρίζεται πάνω στην δηλωτική φύση του Λογισμού Πλειάδων εάν SQL επερωτήσεις εκτελούνται σαν εκφράσεις Σχεσιακής Άλγεβρας Λογισμός Πεδίων (Domain Calculus) Όμοια με Λογισμό Πλειάδων (οι μεταβλητές είναι γνωρίσματα και όχι πλειάδες) Δηλωτική και πάνω σ αυτή στηρίζεται η QBE Υλοποιείται ΙΒΜ QMF, MS Access και Paradox, κ.α.

Τυπικές Γλώσσες Σχεσιακού Μοντέλου (Formal Languages for the Relational Model) Παράδειγμα SQL (πραγματικής γλώσσας βάσης) SELECT fname, lname, salary FROM EMPLOYEE WHERE dno=5 Παράδειγμα Σχεσιακής Άλγεβρας: TEMP σ DNO=5 (EMPLOYEE) RESULT π FNAME, LNAME, SALARY (TEMP) Παράδειγμα Λογισμού Πλειάδων: { t.fname, t.lname, t.salary EMPLOYEE(t) AND t.dno=5} H πιο πάνω έκφραση ονομάζεται Set Builder Notation (Σημειογραφία Δημιουργίας Συνόλων) {<γνωρίσματα αποτελέσματος> <συνθήκες>} Παράδειγμα Λογισμού Πεδίων: Όμοια με Λογισμό Πλειάδων (οι μεταβλητές είναι γνωρίσματα περιορισμοί στο πεδίο ορισμού - και όχι πλειάδες) { qsx EMPLOYEE(qrstuvwxyz) AND z=5} Η έκφραση σε QBE (η οποία υλοποιεί το πιο πάνω) δεν διαφέρει ουσιαστικά (μπορεί να είναι διαγραμματική ωστόσο) Δηλωτική διατύπωση, Προστακτική εκτέλεση Προστακτική διατύπωση & εκτέλεση Δηλωτική διατύπωση & εκτέλεση Δηλωτική διατύπωση & εκτέλεση

Εισαγωγή στη Σχεσιακή Άλγεβρα Η Σχεσιακή Άλγεβρα αποτελείται από ένα βασικό σύνολο πράξεων (τελεστών) για το σχεσιακό μοντέλο. Είναι ουσιαστικά η πιο διαδεδομένη τυπική γλώσσα του Σχε. Μοντ. Αυτοί οι τελεστές επιτρέπουν σε κάποιο να διατυπώσει βασικές πράξεις ανάκτησης, δηλ., επερωτήσεις (queries). Το αποτέλεσμα εκτέλεσης ΟΛΩΝ των τελεστών μας επιστρέφει πίσω μια νέα σχέση, η οποία μπορεί να δημιουργείται από 1 ή περισσότερες σχέσεις εισόδου. Αυτή η ιδιότητα κάνει την Σχεσιακή Άλγεβρα «Κλειστή» ( closed ), δηλ., ΌΛΑ τα αντικείμενα στη σχεσιακή άλγεβρα είναι σχέσεις (ακόμη και μια απλή αριθμητική τιμή) Έκφραση σχεσιακής άλγεβρας (Relational Algebra Expression): Ακολουθία εφαρμογής τελεστών πάνω σε σχέσεις, π.χ., π FNAME, LNAME, SALARY (σ DNO=5 (EMPLOYEE))

Εισαγωγή στη Σχεσιακή Άλγεβρα Η Σχεσιακή Άλγεβρα παρέχει τους τελεστές (operators): Μοναδιαίοι Σχεσιακοί Τελεστές (Unary Relational Ops) Επιλογή (Select, (sigma)) Προβολή (Project, (pi)) Μετονομασία (Rename, ρ (rho)) Σχεσιακοί Τελεστές από την Θεωρία Συνόλων Ένωση (UNION, ), Τομή (INTERSECTION, ), Διαφορά Συνόλων (DIFFERENCE ή MINUS, ) Καρτεσιανό Γινόμενο (CARTESIAN PRODUCT, x ) Δυαδικοί Σχεσιακοί Τελεστές (Binary Relational Ops) Συνένωση (JOIN, )(υπάρχουν πολλαπλές εκδοχές) Εφόσον το δεν υποστηρίζεται σαν σύμβολο θα χρησιμοποιείται το Διαίρεση (DIVISION, /) Επιπλέον Σχεσιακοί Τελεστές Συναρτήσεις Συνάθροισης AGGREGATE FUNCTIONS (π.χ., SUM, COUNT, AVG, MIN, MAX) Εξωτερική Συνένωση, κ.α., (OUTER JOINS)

Σχεσιακή Άλγεβρα Τελεστές πάνω σε όλες τις σχέσεις (πίνακες) Οι παράμετροι είναι (σταθερές ή μεταβλητές) σχέσεις Το αποτέλεσμα είναι μια σχέση Τελεστές θεωρίας συνόλων: Ένωση (Union), Τομή (Intersection), Διαφορά (Difference) και Καρτεσιανό Γινόμενο (Γινόμενο για συντομία) Συγκεκριμένοι Σχεσιακοί Τελεστές : Επιλογή (Selection), Προβολή (Projection), Σύνδεση (Join) και Διαίρεση (Division) Πλήρες σύνολο τελεστών σχεσιακής άλγεβρας: Επιλογή (Select), Προβολή (project), Γινόμενο (product), ένωση (union) και Διαφορά (difference) G. Samaras 2011

Βασικές λειτουργίες Ανάθεσης r s r s r s σχέση r A B C D A F C B D σχέση s B G A D A F Μπορούμε να κάνουμε,, μεταξύ 2 οποιονδήποτε σχέσεων; Πρέπει να είναι συμβατά Συνένωσης R = S και Ανταποκρινόμενα χαρακτηριστικά να έχουν το ίδιο πεδίο ορισμού Ιδιότητες Το και το είναι μεταβατικές λειτουργίες Η Διαφορά δεν είναι μεταβατική (commutative) G. Samaras 2011

Συμβατά; r s r s r s G. Samaras 2011

Τελεστές Θεωρίας Συνόλων Ένωση (UNION) Παράδειγμα: Βρες το SSN όλων των υπαλλήλων που δουλεύουν στο τμήμα (dno) 5 ή επιβλέπουν κάποιο υπάλληλο που δουλεύει στο τμήμα 5. Με ποια σειρά σχεσιακών τελεστών θα απαντήσουμε το πιο πάνω ερώτημα;

Τελεστές Θεωρίας Συνόλων Ένωση (UNION) Eπερώτηση: Διατύπωση σε Σχεσιακή Άλγεβρα TEMP σ DNO=5 (EMPLOYEE) RESULT1 π SSN (TEMP) RESULT2(SSN) π SUPERSSN (TEMP) RESULT RESULT1 RESULT2 Σημειώστε την μετονομασία Αποτέλεσμα:

Τελεστές Θεωρίας Συνόλων Διαφορά Συνόλων (Minus) Συμβατές-προς-Τύπο (παρόλο που έχουν διαφορετικά ονόματα γνωρισμάτων) * * Student =7 Student- Instructor = 5 Αφαίρεση Susan και Ramesh from Student * * Instructor =5 Instructor Student = 3 Αφαίρεση Susan και Ramesh from Instructor

Καρτεσιανό Γινόμενο r x s Έστω p(p) = r(r) x s(s) P =? και p(p) =? P = R + S = α r + α s p(p) = r s σχέση r a b c d a f c b d α r σχέση s b g d a α s Προβλήματα με τα κοινά ονόματα επιλύονται με την χρήση των ονομάτων των σχέσεων σαν πρόθεμα: r.a, r.b, S.A, S.B G. Samaras 2011

Επιλογή (Selection) Μοναδιαίος τελεστής Επιλογή, σ: σ συνθήκη-επιλογής (r) Π.χ., σ Name= John Name = Susan (r) σχέση r A B C a b c d a f c b d result = {t t[name] = John ή t[name] = Susan} Η συνθήκη επιλογής είναι κάθε λογική έκφραση στα χαρακτηριστικά του r εμπλέκοντας κάθε εφαρμόσιμο τελεστή σύγκρισης {=,<,, >,, } Τι γίνετε με σ B=b C = d (r) =? και σ B=b C = d (r) =? Πως μπορούμε να πάρουμε ένα αντίγραφο του r? Πως μπορούμε να πάρουμε ένα κενό αντίγραφο του r? G. Samaras 2011

Μοναδιαίοι Τελεστές Παραδείγματα Επιλογής (σ) Δεδομένα Επερώτηση Αποτέλεσμα

Προβολή (Projection) Μοναδιαίος τελεστής Προβολή, π: π λίστα-χαρακτηριστικών (r) Λίστα-χαρακτηριστικών R Π.χ., π Name, Major (r) result = {t t[name, Μajor]} Το γίνετε με π A,C (r) =? Το γίνετε με π C,A (r) =? σχέση r A B C a b c d a f c b d a d c G. Samaras 2011

Μοναδιαίοι Τελεστές Παραδείγματα Προβολής (π) Δεδομένα Διπλότυπ α Επερώτηση Αποτέλεσμα 7 εγγραφές αντί 8 εγγραφές (λογω duplicates)

Εκφράσεις Σχεσιακής Άλγεβρας Ερώτηση: Όλα τα QPA όλων των φοιτητών του CSD των οποίων το QPA είναι μεγαλύτερο από 3.5 STUDENT (SID,FName,SName,Dept,Major,QPA) Ενσωματωμένοι (nested) τελεστές π SID, QPA (σ Dept = CSD QPA>3.5 (STUDENT)) Ακολουθία τελεστών HS σ Dept = CSD QPA>3.5 (STUDENT) RESULT π SID, QPA (HS) Μετονομασία χαρακτηριστικών στο αποτέλεσμα RSLT(StudentID, GPA) π SID, QPA (HS) G. Samaras 2011

Τελεστής Μετονομασίας Αλλάξτε τα ονόματα των χαρακτηριστικών: ρ(a1,a2,a3,..,an)(r) Παράδειγμα: ρ(studentid, GPA) ( π SID, QPA (σ Dept = CSD QPA>3.5 (STUDENT)) G. Samaras 2011

Δεδομένα Μοναδιαίοι Σχεσιακοί Τελεστές Τελεστής RENAME No Renaming (A) π FNAME, LNAME, SALARY ( σ DNO=5 (EMPLOYEE) ) With Renaming (B) TEMP σ DNO=5 (EMPLOYEE) ρ(first_name, Last_Name, Salary) π FNAME, LNAME, SALARY (TEMP)

Ιδιότητες του σ και π σ cond1 (σ cond2 (R)) = σ cond2 (σ cond1 (R)) σ cond1 (σ cond2 (R)) = σ cond2 cond1 (R)) = σ cond1 cond2 (R)) π list1 (π list2 (R)) = π list1 (R) Πότε? G. Samaras 2011

Proof Example? σ cond1 (σ cond2 (R)) = σ cond2 (σ cond1 (R)) X σ cond1 (σ cond2 (R)) <==> X (σ cond2 (R) AND COND1(X) <==> X (R) AND COND2(X) AND COND1(X) <==> X (R) AND COND1(X) AND COND2(X) <==> X (σ cond1 (R) AND COND2(X) <==> X σ cond2 (σ cond1 (R)) PG. Samaras 20