Κεφάλαιο 4. Η Γλώσσα SQL και Σχεσιακός Λογισµός. Ι.Β. Σχεσιακός Λογισµός και η Γλώσσα SQL Σελίδα 2.46

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "Κεφάλαιο 4. Η Γλώσσα SQL και Σχεσιακός Λογισµός. Ι.Β. Σχεσιακός Λογισµός και η Γλώσσα SQL Σελίδα 2.46"

Transcript

1 Κεφάλαιο 4 Η Γλώσσα SQL και Σχεσιακός Λογισµός Ι.Β. Σχεσιακός Λογισµός και η Γλώσσα SQL Σελίδα 2.46

2 Σχεσιακός Λογισµός: ΕΙΣΑΓΩΓΗ Ο Σχεσιακός Λογισµός (RC) είναι µια µη-διαδικαστική, τυπική γλώσσα που βασίζεται στον κατηγορηµατικό λογισµό πρώτης τάξης Οι ερωταποκρίσεις στην RC προδιαγράφουν ΤΙ πρόκειται να ανακληθεί (δηλωτικά) ενώ το σύστηµα (που υποστηρίζει την γλώσσα) αναλαµβάνει το ΠΩΣ Οι περισσότερες εµπορικές σχεσιακές γλώσσες έχουν τις ρίζες τους στον Σχεσιακό Λογισµό (QUEL, QBE, SQL). Αυτές οι γλώσσες δίνουν έµφαση στην ευκολία χρήσης. Ως προς την εκφραστικότητα, ΣΧΕΣΙΑΚΗ ΑΛΓΕΒΡΑ και ΣΧΕΣΙΑΚΟΣ ΛΟΓΙΣΜΟΣ είναι ταυτόσηµοι. Ι.Β. Σχεσιακός Λογισµός και η Γλώσσα SQL Σελίδα 2.47

3 Σχεσιακός Λογισµός: ΕΙΣΑΓΩΓΗ (2) Ο Σχεσιακός Λογισµός χρησιµοποιεί την έννοια της ΜΕΤΑΒΛΗΤΗΣ Υπάρχουν δυο µορφές της Γλώσσας: Λογισµός Πλειάδων οι µεταβλητές αναφέρονται σε πλειάδες από µια Σχέση π.χ., t είναι µια µεταβλητή πλειάδος που αναφέρεται σε µια πλειάδα της r(r) Λογισµός Πεδίων Τιµών οι µεταβλητές αναφέρονται σε τιµές από ένα Πεδίο π.χ., d είναι µια µεταβλητή πεδίου που αναφέρεται σε µια τιµή, που έχει µια πλειάδα της r(r) για το γνώρισµα A (από το πεδίο D) Ι.Β. Σχεσιακός Λογισµός και η Γλώσσα SQL Σελίδα 2.48

4 Σχεσιακός Λογισµός Πλειάδων Μια ΕΚΦΡΑΣΗ στον ΣΧΕΣΙΑΚΟ ΛΟΓΙΣΜΟ ορίζει µια νέα Σχέση µε βάση της υπάρχουσες σχέσεις. Μια έκφραση κατασκευάζεται από τα παρακάτω στοιχεία: (1) Μεταβλητές πλειάδων (π.χ., t, v, w, t 1, t 2, t 3,... t n ), οι οποίες ορίζονται να παίρνουν τιµές από ένα στιγµιότυπο σχέσης r(r) Οι µεταβλητές µπορεί να είναι περιορισµένες (restricted,) όπου, t.a, µε A ένα γνώρισµα της R, συµβολίζει το A-τµήµα της τιµής του t Παράδειγµα: t.name (2) Συνθήκες της µορφής x τελεστής y, όπου x, y είναι περιορισµένες µεταβλητές πλειάδος ή σταθερές τιµές και ο τελεστής { =,, <, >,, } Παράδειγµα: t.name = Μαρία, t.city v.city Ι.Β. Σχεσιακός Λογισµός και η Γλώσσα SQL Σελίδα 2.49

5 Εκφράσεις στον Λογισµό Πλειάδων (3) Well-Formed Formulas (WFFs), ορίζονται ως: µια συνθήκη είναι WFF αν f είναι µια WFF, τότε είναι και η (f) και η (f) (όπου είναι το Λογικό NOT) αν f και g είναι WFFs, τότε είναι και η (f & g) και η (f g) (όπου &,, είναι τα Λογικά AND, OR αντίστοιχα) αν f είναι WFF µε ελεύθερη µεταβλητή t, τότε είναι και οι t(f), t(f) (όπου, είναι οι υπαρξιακός (existential) και καθολικός (universal) ποσοδείκτες) Μια µεταβλητή πλειάδος t ονοµάζεται δεσµευµένη (bound) σε µια έκφραση f αν είναι µια από µεταβλητές που ποσοδεικτούνται στην f. Αλλιώς, η t είναι ελεύθερη (free) στην f. Παράδειγµα: t είναι free στην f 1 : (t.city = london ) και είναι bound στην f 2 : ( t ) (t.dnumber = v.dno), ενώ η v είναι free in f 2 Ι.Β. Σχεσιακός Λογισµός και η Γλώσσα SQL Σελίδα 2.50

6 Εκφράσεις στον Λογισµό Πλειάδων Παραδείγµατα των WFFs t.city = v.city (t.city = v.city) (t.city = v.city) (t.city v.city) (t.city = v.city) & (w.city = London) t (t.city = v.city) t (t.city = Athens) αν f είναι µια WFF, τότε µια έκφραση στον λογισµό πλειάδων είναι κάθε έκφραση της µορφής: { t i.a j t i r(r k ) AND f } όπου τα R k είναι σχήµατα σχέσεων και τα A j είναι γνωρίσµατα στις R k Ι.Β. Σχεσιακός Λογισµός και η Γλώσσα SQL Σελίδα 2.51

7 Παραδείγµατα Ερωταποκρίσεων (1) Επανερχόµαστε στην γνωστή Β των Ναυτικών SAILORS (Sid, SName, Rating) BOATS (Bid, BName, Color) RESERVE (Sid, Bid, Date) QUERY1: Βρες τα ονόµατα των ΝΑΥΤΙΚΩΝ που έχουν id µεγαλύτερο από 10 και έχουν διαβάθµιση (rating) α RANGE of t is SAILORS t.sname where (t.sid > 10) & (t.rating = a ) Παρακάτω δίνεται σαν θεωρητικά καθαρό RC query: { t.sname t r(sailors) & ((t.sid > 10) & (t.rating = a )) } Ι.Β. Σχεσιακός Λογισµός και η Γλώσσα SQL Σελίδα 2.52

8 Παραδείγµατα Ερωταποκρίσεων (2) QUERY2: Βρες τα ονόµατα και διαβαθµίσεις των ΝΑΥΤΙΚΩΝ που έχουν κρατήσει το ΣΚΑΦΟΣ µε νούµερο 3 RANGE of t is SAILORS RANGE of v is RESERVE t.sname, t.rating where v ( (t.sid = v.sid) & (v.bid = 3) ) QUERY3: Βρες τα ονόµατα των ΝΑΥΤΙΚΩΝ που δεν έχουν κρατήσει το ΣΚΑΦΟΣ µε νούµερο 3 RANGE of t is SAILORS RANGE of v is RESERVE t.sname where ( v ( (t.sid = v.sid) & (v.bid = 3) ) ) Ι.Β. Σχεσιακός Λογισµός και η Γλώσσα SQL Σελίδα 2.53

9 SQL - ΕΙΣΑΓΩΓΗ SQL (Structured Query Language) είναι η τυποποιηµένη standard γλώσσα στις Σχεσιακές Βάσεις. Η πρώτη χρήση ήταν στο πρότυπο σύστηµα της IBM, που ονοµάστηκε SYSTEM-R, το οποίο ανεπτύχθη στα ερευνητικά εργαστήρια της εταιρείας (San Jose, California) στα µέσα της δεκαετίας το Η SQL έχει υποστεί πολλές τροποποιήσεις. Υπάρχουν 4 βασικές εντολές: select (δεν είναι το ίδιο µε το SELECTION στην Άλγεβρα) insert update delete Το αποτέλεσµα µιας εντολής / πράξης σε Σχέσεις είναι (πάντα) µια νέα Σχέση Ι.Β. Σχεσιακός Λογισµός και η Γλώσσα SQL Σελίδα 2.54

10 SQL - ιαχρονικά Η γλώσσα SQL --- παγκόσµια σταθερά σε Β Sequel 75 (System R) SQL86» H Πρώτη προσπάθεια για τυποποίηση SQL89» referential integrity SQL92» agents, client/server, embedded SQL, dynamic SQL (cursors), temporary tables, standard error codes SQL3» object SQL Ιδιότητες» αρµονία µε DCE, X/Open» multimedia (text, audio, video, BLOBs) Ι.Β. Σχεσιακός Λογισµός και η Γλώσσα SQL Σελίδα 2.55

11 SQL - Άτυπος Ορισµός Θεωρήστε τη Σχέση EMPLOYEE και την παρακάτω ερωταπόκριση: Βρείτε τα ονόµατα των Υπαλλήλων που έχουν µισθό µεγαλύτερο των 600,000 Στην SQL: select e.name from EMPLOYEE e where (e.salary > ) e είναι µια µεταβλητή πλειάδος που ορίζεται να παίρνει τιµές από την Σχέση EMPLOYEE (στην from πρόταση) e.name, ως περιορισµένη µεταβλητή πλειάδος, προσδιορίζει την τιµή του e στο γνώρισµα Name, και αποτελεί το target list (προσδιορίζει στην select πρόταση τις προβολές των στηλών) (e.salary > 30000) είναι η ικανοποίηση συνθήκης (qualification ) (προσδιορίζει στην where πρόταση όλες τις επιλογές και συνενώσεις) Ι.Β. Σχεσιακός Λογισµός και η Γλώσσα SQL Σελίδα 2.56

12 SQL Τυπικός Ορισµός (1) Η selection clause είναι µια σύγκριση µεταξύ µιας περιορισµένης µεταβλητής πλειάδος x και µιας σταθεράς c της µορφής : x operator c where operator { =,, <, >,, } Παράδειγµα: t.name = mary, t.salary > Η join clause είναι µια σύγκριση µεταξύ δύο περιορισµένων µεταβλητών πλειάδος x και y της µορφής: x operator y όπου x, y ανήκουν σε διαφορετικές Σχέσεις και operator { =,, <, >,, } Παράδειγµα: t.name = v.ename Ι.Β. Σχεσιακός Λογισµός και η Γλώσσα SQL Σελίδα 2.57

13 SQL -- --Τυπικός Ορισµός (2) Η qualification είναι ένας Boolean συνδυασµός (δηλαδή, µε τα Λογικά and, or, not) µεταξύ selection και join προτάσεων.) Παράδειγµα: (t.name = v.ename) and (t.salary > 30000) Σηµασιολογία του QUALIFICATION Μια qualification Q περιγράφει το υποσύνολο του Καρτεσιανού Γινοµένου όλων των δυνατών τιµών των περιορισµένων της µεταβλητών που ικανοποιεί την Q Παράδειγµα: : Έστω οι Σχέσεις: EMPLOYEE(SSN, DNumber) και DEPARTMENT(Dno, mgrssn), µε e και d µεταβλητές πλειάδος Q = (e.dnumber = d.dno) and (d.mgrssn = 9876) Σηµασιολογία του Q: Το σύνολο των ζευγών e, d που ικανοποιούν την Q Ι.Β. Σχεσιακός Λογισµός και η Γλώσσα SQL Σελίδα 2.58

14 SQL -- --Σηµασιολογία Εκτέλεσης EMPLOYEE SSN DNumber DEPARTMENT Dno MgrSSN X = Καρτεσιανό Γινόµενο SSN DNumber Dno mgrssn Τέλος, αφού κατασκευαστεί το υποσύνολο της EMPLOYEE X DEPARTMENT που ικανοποιεί τη συνθήκη Q, παίρνουµε δυο πλειάδες: SSN DNumber Dno mgrssn Ι.Β. Σχεσιακός Λογισµός και η Γλώσσα SQL Σελίδα 2.59

15 SQL Πλήρης Μορφή select [ distinct ] target_list from tuple_variable_list [ where qualification ] [ group by grouping_attributes ] [ having group_condition ] [ order by target_list_subset ] Μια ερωταπόκριση αποτιµάται πρώτα µε την εφαρµογή της WHERE πρότασης, µετά των GROUP-BY και HAVING (προαιρετικά), και τέλος της SELECT πρότασης (στόχος λίστα γνωρισµάτων) µε ταξινόµηση των πλειάδων στην απάντηση ή διαγραφή διπλών τιµών, αν απαιτείται από την ORDER BY πρόταση ή το DISTINCT (επίσης προαιρετικά). Ι.Β. Σχεσιακός Λογισµός και η Γλώσσα SQL Σελίδα 2.60

16 SQL: Παραδείγµατα στην Β Ναυτικών (1) Επανερχόµαστε στην Β των Ναυτικών: SAILORS (Sid, SName, Rating) BOATS (Bid, BName, Color) RESERVE (Sid, Bid, Date) SQUERY1: Βρες τα ονόµατα των ΝΑΥΤΙΚΩΝ που έχουν κάνει κράτηση για το ΣΚΑΦΟΣ µε νούµερο 2 select s.sname from SAILORS s, RESERVE r where s.sid = r.sid and r.bid = 2 Ι.Β. Σχεσιακός Λογισµός και η Γλώσσα SQL Σελίδα 2.61

17 SQL: Παραδείγµατα στην Β Ναυτικών (2) SQUERY2: Βρες τα ονόµατα των ΝΑΥΤΙΚΩΝ που έχουν κρατήσει ΣΚΑΦΗ µε χρώµα κόκκινο select from where s.sname SAILORS s, BOATS b, RESERVE r s.sid = r.sid and r.bid = b.bid and b.color = red SQUERY3: Βρες τα χρώµατα των σκαφών που έχει κρατήσει η ναυτικός µε το όνοµα Ελένη select from where b.color SAILORS s, BOATS b, RESERVE r s.sid = r.sid and r.bid =b.bid and s.sname= eleni Ι.Β. Σχεσιακός Λογισµός και η Γλώσσα SQL Σελίδα 2.62

18 SQL: Παραδείγµατα στην Β Ναυτικών (3) SQUERY4: Βρες τα ονόµατα των ΝΑΥΤΙΚΩΝ που έχουν κρατήσει τουλάχιστον ένα ΣΚΑΦΟΣ select from where s.sname SAILORS s, RESERVE r s.sid = r.sid SQUERY5: Βρες τα ονόµατα των ΝΑΥΤΙΚΩΝ που έχουν κρατήσει ένα κόκκινο ή ένα πράσινο ΣΚΑΦΟΣ select from where s.sname SAILORS s, BOATS b, RESERVE r s.sid = r.sid and r.bid = b.bid and (b.color = red or b.color = green ) Ι.Β. Σχεσιακός Λογισµός και η Γλώσσα SQL Σελίδα 2.63

19 SQL: Παραδείγµατα στην Β Ναυτικών (4) SQUERY6: Βρες τα ονόµατα των ΝΑΥΤΙΚΩΝ που έχουν κρατήσει ένα κόκκινο και ένα πράσινο ΣΚΑΦΟΣ select s.sname from SAILORS s, BOATS b1, RESERVE r1, BOATS b2, RESERVE r2 where s.sid = r1.sid and r1.bid = b1.bid and b1.color = red and s.sid = r2.sid and r2.bid = b2.bid and b2.color = green Ι.Β. Σχεσιακός Λογισµός και η Γλώσσα SQL Σελίδα 2.64

20 SQL Αναλυτικά: Παραδείγµατα και Σχόλια από τη Β µιας Εταιρείας EMPLOYEE ( SSN, Name, BirthDate, Address, Sex, Salary, SupSSN, DNumber) DEPARTMENT ( DNumber, DName, MgrSSN, MgrStartDate) PROJECT ( PNumber, PName, Location, DNumber) DEPT_LOCATION ( DNumber, DLocation) WORKS_ON ( SSN, PNumber, HoursPW) DEPENDENT ( SSN, DependName, Sex, BirthDate, Relationship) Ι.Β. Σχεσιακός Λογισµός και η Γλώσσα SQL Σελίδα 2.65

21 SQL: Παραδείγµατα για target list (1) TARGET LISTS: Κάθε στοιχείο στην target list είναι σε γενική µορφή: attribute_name = expression όπου expression είναι µια αριθµητική έκφραση σε περιορισµένες µεταβλητές πλειάδος και σταθερές (όπως επίσης, built-ins και aggregates.) CQUERY1: Παρουσίασε, αυξηµένους κατά τους µισθούς των Υπαλλήλων, που έχουν εργαστεί σε δύο διαφορετικά έργα περισσότερο από 25 ώρες select e.name, Salary = e.salary from where EMPLOYEE e, WORKS_ON w1, WORKS_ON w2 e.ssn = w1.ssn and e.ssn = w2.ssn and w1.hourspw > 25 and w2.hourspw > 25 and w1.pnumber!= w2.pnumber Ι.Β. Σχεσιακός Λογισµός και η Γλώσσα SQL Σελίδα 2.66

22 SQL: Παραδείγµατα για target list (2) Τα TARGET Lists µπορεί επίσης να περιέχουν τη λέξη κλειδί DISTINCT Εφόσον η SQL δεν θεωρεί τις Σχέσεις ως σύνολα, διπλές πλειάδες είναι δυνατόν να παρουσιαστούν, σε αυτή την περίπτωση το DISTINCT χρησιµοποιείται για διαγραφή των διπλών τιµών CQUERY2: είξε όλες τις ΙΑΦΟΡΕΤΙΚΕΣ τιµές των µισθών Υπαλλήλων select from distinct e.salary EMPLOYEE e Αυτή η ερωταπόκριση δείχνει επίσης ότι η WHERE πρόταση είναι προαιρετική (χωρίς WHERE, όλες οι πλειάδες παρουσιάζονται) Ι.Β. Σχεσιακός Λογισµός και η Γλώσσα SQL Σελίδα 2.67

23 SQL: Παραδείγµατα για target list (3) ΤοTARGET List µπορεί να περιέχει τον ειδικό χαρακτήρα: * (αστεράκι) Όταν ένα * χρησιµοποιείται, σηµαίνει ότι όλα τα γνωρίσµατα από τις Σχέσεις πρέπει να ανακτηθούν CQUERY3: είξε όλους τους Υπαλλήλους του Τµήµατος 4 select * from EMPLOYEE e where e.dnumber = 4 Ι.Β. Σχεσιακός Λογισµός και η Γλώσσα SQL Σελίδα 2.68

24 SQL: Χρήση Μεταβλητών Πλειάδας Τα ονόµατα των Σχέσεων µπορεί να χρησιµοποιηθούν αντί για τις µεταβλητές πλειάδος Αν το Σύστηµα µπορεί να καταλάβει σε ποια Σχέση κάθε Γνώρισµα ανήκει, τότε οι µεταβλητές πλειάδος µπορεί να είναι συνεπαγόµενες (implicit) CQUERY4: Για κάθε έργο που εκτελείται στην Αθήνα, παρουσίασε το όνοµά του, το νούµερο του τµήµατος που το ελέγχει και το όνοµα του µάνατζερ του Τµήµατος select from where PName, DEPARTMENT.DNumber, Name EMPLOYEE, DEPARTMENT, PROJECT PROJECT.DNumber = DEPARTMENT.DNumber and MgrSSN = SSN and Location = Athens Ι.Β. Σχεσιακός Λογισµός και η Γλώσσα SQL Σελίδα 2.69

25 SQL: Παραδείγµατα µε Qualification (1) QUALIFICATIONS: Κάθε στοιχείο µιας qualification έχει τη γενική µορφή: expression = expression CQUERY5: Βρες τα ονόµατα των Υπαλλήλων, των οποίων ο µισθός είναι περισσότερου του διπλασίου του µισθού κάποιου άλλου Υπαλλήλου (δώστε και τα ονόµατα των δευτέρων) select from where Name1 = e1.name, Name2 = e1.name EMPLOYEE e1, EMPLOYEE e2 2 * e1.salary < e2.salary Ι.Β. Σχεσιακός Λογισµός και η Γλώσσα SQL Σελίδα 2.70

26 SQL: Παραδείγµατα µε Qualification (2) Η SQL υποστηρίζει άµεσα τις πράξεις συνόλων, όπως: union minus intersect CQUERY6: Βρες τα ονόµατα των Υπαλλήλων που εργάζονται στο Τµήµα µε νούµερο 4 και έχουν µισθό τουλάχιστον (select Name from EMPLOYEE where DNumber = 4 ) minus (select Name from EMPLOYEE where Salary < ) Ι.Β. Σχεσιακός Λογισµός και η Γλώσσα SQL Σελίδα 2.71

27 SQL: Παραδείγµατα µε Qualification (3) CQUERY7: Παρουσίασε τα ονόµατα των έργων, που έχουν έναν Υπάλληλο µε όνοµα jenny ως εργαζόµενο ή ως µάνατζερ του Τµήµατος που ελέγχει το έργο (select PName from EMPLOYEE, PROJECT, DEPARTMENT where EMPLOYEE.DNumber=DEPARTMENT.DNumber and MgrSSN = SSN and Name = jenny ) union (select PName from EMPLOYEE, PROJECT, WORKS_ON where PROJECT.PNumber = WORKS_ON.PNumber and WORKS_ON.SSN=EMPLOYEE.SSN and Name = jenny ) Ι.Β. Σχεσιακός Λογισµός και η Γλώσσα SQL Σελίδα 2.72

28 SQL: Παραδείγµατα µε Qualification (4) ΕΜΦΩΛΙΑΣΜΟΣ (nesting) SQL Ερωταποκρίσεων: Ένα πλήρες SELECT query (αποκαλείται, nested query) µπορεί να υπάρχει µέσα στην πρόταση WHERE ενός άλλου query (αποκαλείται, το outer query) CQUERY8: Παρουσίασε όλους τους Υπαλλήλους που εργάζονται στο Τµήµα «Έρευνα» select from where Name EMPLOYEE DNumber in (select DNumber from DEPARTMENT where DName = research ) Ι.Β. Σχεσιακός Λογισµός και η Γλώσσα SQL Σελίδα 2.73

29 SQL: Παραδείγµατα µε Qualification (5) Συσχετισµένα (CORRELATED) NESTED Queries: Εάν η συνθήκη στην WHERE πρόταση ενός nested query αναφέρεται σε ένα γνώρισµα του outer query, τότε τα δύο λέγονται Συσχετιζόµενα Το αποτέλεσµα του nested query είναι διαφορετικό για κάθε πλειάδα των Σχέσεων στο outer query CQUERY9: Παρουσίασε το όνοµα κάθε Υπαλλήλου, που έχει έναν εξαρτώµενο ιδίου φύλλου µε τον Υπάλληλο select Name from EMPLOYEE e where e.ssn in (select d.ssn from DEPENDENT d where d.ssn = e.ssn and d.sex = e.sex ) Ι.Β. Σχεσιακός Λογισµός και η Γλώσσα SQL Σελίδα 2.74

30 SQL: Παραδείγµατα µε Qualification (6) Κάθε ερωταπόκριση που χρησιµοποιεί τον τελεστή IN (ελέγχει τη συµµετοχή σε σύνολο) µπορεί πάντα να εκφραστεί χωρίς εµφωλιασµό (flat query) CQUERY9a: Παρουσίασε το όνοµα κάθε Υπαλλήλου, που έχει έναν εξαρτώµενο ιδίου φύλλου µε τον Υπάλληλο select Name from EMPLOYEE e, DEPENDENT d where e.ssn = d.ssn and d.sex = e.sex ) Ι.Β. Σχεσιακός Λογισµός και η Γλώσσα SQL Σελίδα 2.75

31 SQL: Παραδείγµατα µε Qualification (7) Παρόµοιοι τελεστές µε το IN είναι: not in (ελέγχει τη µη συµµετοχή σε σύνολο) OP any (OP συσχέτιση µε κάποια πλειάδα σε σύνολο) OP all (OP συσχέτιση µε όλες τις πλειάδες σε σύνολο) where OP { =,, <, >,, } CQUERY10: Παρουσίασε τους Υπαλλήλους που έχουν µεγαλύτερο µισθό από όλους τους Υπαλλήλους του Τµήµατος «Έρευνα» select from where Name EMPLOYEE Salary > all (select Salary from EMPLOYEE e, DEPARTMENT d where e.dnumber = d.dnumber and DName = research ) Ι.Β. Σχεσιακός Λογισµός και η Γλώσσα SQL Σελίδα 2.76

32 SQL: Παραδείγµατα µε Qualification (8) Η SQL επίσης παρέχει τελεστές για σύγκριση συνόλων: contains, not contains (υπερσύνολο ή όχι) exists, not exists (κενό σύνολο ή όχι) CQUERY11: Παρουσίασε τους Υπαλλήλους που εργάζονται σε όλα τα έργα που ελέγχονται από το Τµήµα 4 select from Name EMPLOYEE e where (select w.pnumber from WORKS_ON where w.ssn = e.ssn) contains (select PNumber from PROJECT where DNumber = 4) Ι.Β. Σχεσιακός Λογισµός και η Γλώσσα SQL Σελίδα 2.77

33 SQL: Παραδείγµατα µε Qualification (9) CQUERY9b: Παρουσίασε το όνοµα κάθε Υπαλλήλου, που έχει έναν εξαρτώµενο ιδίου φύλλου µε τον Υπάλληλο select Name from EMPLOYEE e where exists (select * from DEPENDENT d where d.ssn=e.ssn and d.sex = e.sex) CQUERY12: Παρουσίασε τους Υπαλλήλους που δεν έχουν εξαρτώµενους select Name from EMPLOYEE e where not exists (select * from DEPENDENT d where d.ssn=e.ssn ) Ι.Β. Σχεσιακός Λογισµός και η Γλώσσα SQL Σελίδα 2.78

34 SQL Συναθροιστικές Συναρτήσεις και Οµαδοποίηση (1) Η SQL υποστηρίζει ΠΕΝΤΕ Συναθροιστικές Συναρτήσεις (AGGREGATE FUNCTIONS) count ( [DISTINCT] X) :αριθµός διακριτών τιµών στο X sum ( [DISTINCT] X) : άθροισµα των διακριτών τιµών στο X avg ( [DISTINCT] X) : µέση τιµή των διακριτών τιµών στο X max (X) :µέγιστη τιµή στο X min (X) :ελάχιστη τιµή στο X Οι Συναθροιστικές Συναρτήσεις επιστρέφουν ΜΙΑ τιµή Ι.Β. Σχεσιακός Λογισµός και η Γλώσσα SQL Σελίδα 2.79

35 SQL Συναθροιστικές Συναρτήσεις και Οµαδοποίηση (2) Μερικές SQL υλοποιήσεις έχουν περιορισµούς (π.χ. δεν επιτρέπουν περισσότερες από µια τιµές από συναθροιστική συνάρτηση στο target list) CQUERY13: Παρουσίασε τον Μέγιστο µισθό, τον Ελάχιστο µισθό, και το Μέσο µισθό µεταξύ όλων των Υπαλλήλων select from max(salary), min(salary), avg(salary) EMPLOYEE QUERY14: Βρες τον αριθµό των Υπαλλήλων select from count(*) EMPLOYEE Ι.Β. Σχεσιακός Λογισµός και η Γλώσσα SQL Σελίδα 2.80

36 SQL Συναθροιστικές Συναρτήσεις και Οµαδοποίηση (3) Qualified Aggregates: Το σύνολο στο οποίο οι Συναθροιστικές Συναρτήσεις εφαρµόζονται µπορεί να περιοριστεί από την where-πρόταση CQUERY15: Παρουσίασε το Μέσο µισθό µεταξύ όλων των Υπαλλήλων στο Τµήµα µε νούµερο 4 select from avg(salary) EMPLOYEE where DNumber = 4 Ι.Β. Σχεσιακός Λογισµός και η Γλώσσα SQL Σελίδα 2.81

37 SQL Συναθροιστικές Συναρτήσεις και Οµαδοποίηση (4) Οµαδοποίηση και Συναθροιστικές Συναρτήσεις: Συσσωρεύσεις ήοµάδες πλειάδων υπολογίζονται µε την GROUP BY πρόταση CQUERY16: Για κάθε τµήµα, βρες την ελάχιστη ηλικία των Υπαλλήλων που έχουν µισθό µεγαλύτερο των select DNumber, max(birthdate) from EMPLOYEE where Salary > group by DNumber Σηµειώνεται ότι το Γνώρισµα οµαδοποίησης ΠΡΕΠΕΙ ΕΠΙΣΗΣ να παρουσιάζεται στην select πρόταση Ι.Β. Σχεσιακός Λογισµός και η Γλώσσα SQL Σελίδα 2.82

38 SQL Συναθροιστικές Συναρτήσεις και Οµαδοποίηση (5) CQUERY17: Για κάθε έργο, βρες το νούµερο και όνοµα του έργου, καθώς και τον αριθµό των Υπαλλήλων που εργάζονται στο έργο select from where p.pnumber, p.pname, count(*) PROJECT p, WORKS_ON w p.pnumber = w.pnumber group by PNumber, PName Οι οµαδοποιήσεις και συναρτήσεις εφαρµόζονται ΜΕΤΑ τη Συνένωση των Σχέσεων PROJECT και WORKS_ON. Ι.Β. Σχεσιακός Λογισµός και η Γλώσσα SQL Σελίδα 2.83

39 SQL Συναθροιστικές Συναρτήσεις και Οµαδοποίηση (6) HAVING Πρόταση: Τα Qualifications, που απαιτείται να ικανοποιούνται για κάθε οµάδα που συγκροτείται στην group by- πρόταση, µπαίνουν σε µια HAVING πρόταση CQUERY18: Βρες τον Μέσο µισθό Υπαλλήλων, που γεννήθηκαν µετά το 1950 για κάθε τµήµα µε περισσότερους των 10 Υπαλλήλων select from DNumber, avg(salary) EMPLOYEE where BirthDate > group by DNumber having count(*) > 10 Ι.Β. Σχεσιακός Λογισµός και η Γλώσσα SQL Σελίδα 2.84

40 SQL Συναθροιστικές Συναρτήσεις και Οµαδοποίηση(7) CQUERY19: Βρες τον µέσο µισθό Υπαλλήλων που γεννήθηκαν µετά το 1950, για κάθε Τµήµα µε περισσότερους των 10 Υπαλλήλων select from e1.dnumber, avg(e1.salary) EMPLOYEE e1 where e1.birthdate > group by e1.dnumber having 10 < any (select from count(e2.ssn) EMPLOYEE e2 where e2.dnumber = e1.dnumber ) Ι.Β. Σχεσιακός Λογισµός και η Γλώσσα SQL Σελίδα 2.85

41 SQL Ενηµερώσεις - Updates (1) Εντολή INSERT insert into relation_name select-statement ή insert into relation_name values (value_list) CUPDATE1: Εισαγωγή ενός νέου τµήµατος insert into DEPARTMENT values (6, inventory, 9879, ) Ι.Β. Σχεσιακός Λογισµός και η Γλώσσα SQL Σελίδα 2.86

42 SQL Ενηµερώσεις - Updates (2) Έστω ότι έχουµε µια Σχέση DEPT_INFO: DEPT_INFO ( DeptName, NoOfEmpl, TotalSalary) Μπορούµε να εισάγουµε πλειάδες (CUPDATE2): insert into DEPT_INFO select d.dname, count(*), sum(e.salary) from DEPARTMENT d, EMPLOYEE e where d.dnumber=e.dnumber group by d.dname Ι.Β. Σχεσιακός Λογισµός και η Γλώσσα SQL Σελίδα 2.87

43 SQL Ενηµερώσεις - Updates (3) Εντολή DELETE delete from relation_name where-qualification SEMANTICS: -- Εκτέλεσε την ανάλογη SELECT εντολή και έπειτα ιέγραψε τις πλειάδες του αποτελέσµατος από τη Σχέση CUPDATE3: delete from EMPLOYEE where DNumber in (select DNumber from where DEPARTMENT DName = admin ) Ι.Β. Σχεσιακός Λογισµός και η Γλώσσα SQL Σελίδα 2.88

44 SQL Ενηµερώσεις - Updates (4) Εντολή UPDATE update relation_name set target_list where qualification SEMANTICS: -- Εκτέλεσε τις δύο ανάλογες SELECT εντολές, µετά, διέγραψε τις πλειάδες από την πρώτη και τέλος, κάνε εισαγωγή των νέων CUPDATE4: update EMPLOYEE set Salary = Salary * 1.14 where DNumber in (select DNumber from DEPARTMENT where DName = admin ) Ι.Β. Σχεσιακός Λογισµός και η Γλώσσα SQL Σελίδα 2.89

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

S Q Q L L -- SQL (Structured Query Language) select insert update delete 2.47 Κεφάλαιο 4 Η Γλώσσα SQL και Σχεσιακός Λογισµός Ι.Β. Σχεσιακός Λογισµός και η Γλώσσα SQL Σελίδα 2.46 SQL -ΕΙΣΑΓΩΓΗ SQL (Structured Query Language) είναι η τυποποιηµένη standard γλώσσα στις Σχεσιακές Βάσεις.

Διαβάστε περισσότερα

Η Γλώσσα SQL. Μέρος α. Η Γλώσσα SQL Σελίδα 1

Η Γλώσσα SQL. Μέρος α. Η Γλώσσα SQL Σελίδα 1 Η Γλώσσα SQL Μέρος α Η Γλώσσα SQL Σελίδα 1 SQL - ΕΙΣΑΓΩΓΗ SQL (Structured Query Language) είναι η τυποποιηµένη standard γλώσσα στις Σχεσιακές Βάσεις. Η πρώτη χρήση ήταν στο πρότυπο σύστηµα της IBM, που

Διαβάστε περισσότερα

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

ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ Relational Model. SQL Μαθ. #11 ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ Relational Model SQL Μαθ. #11 Ε-R Model for a COMPANY database The COMPANY relational database schema A relational database instance of the COMPANY schema SQL Μια γλώσσα σχεσιακής βάσης

Διαβάστε περισσότερα

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

SQL: Αιτήματα. Κεφάλαιο 5. Database Management Systems, R. Ramakrishnan and J. Gehrke SQL: Αιτήματα Κεφάλαιο 5 Database Management Systems, R. Ramakrishnan and J. Gehrke Στιγμιότυπα Στιγμιότυπα των σχέσεων Sailors Reserves και Boats. Αν στο κλειδί της σχέσης Reserved δε συμμετείχε το γνώρισμα

Διαβάστε περισσότερα

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

ΗΥ-360 Αρχεία και Βάσεις Δεδομένων Διδάσκων: Δ. Πλεξουσάκης. Φροντιστήριο SQL Examples ΙΙ Ξένου Ρουμπίνη ΗΥ-360 Αρχεία και Βάσεις Δεδομένων Διδάσκων: Δ. Πλεξουσάκης Φροντιστήριο SQL Examples ΙΙ Ξένου Ρουμπίνη 1 SQL(DML) - Query Example 1 Query:1 Βρείτε τα ονόματα των έργων που δεν αφορούν το τμήμα research

Διαβάστε περισσότερα

ΚΕΡΑΜΟΠΟΥΛΟΣ ΕΥΚΛΕΙΔΗΣ

ΚΕΡΑΜΟΠΟΥΛΟΣ ΕΥΚΛΕΙΔΗΣ ΚΕΡΑΜΟΠΟΥΛΟΣ ΕΥΚΛΕΙΔΗΣ Πίνακας Πεδίο Τύπος Κύριο κλειδί Αναφορική ακεραιότητα οντοτήτων Ξένο κλειδί Αναφορική ακεραιότητα δεδομένων Δρ. Κεραμόπουλος Ευκλείδης 2 ΚΥΡΙΟ ΚΛΕΙΔΙ ΦΟΙΤΗΤΗΣ ΑΜ CHAR(5) ΟΝΟΜΑ VARCHAR(20)

Διαβάστε περισσότερα

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

Βάσεις δεδομένων. (7 ο μάθημα) Ηρακλής Βαρλάμης Βάσεις δεδομένων (7 ο μάθημα) Ηρακλής Βαρλάμης varlamis@hua.gr Περιεχόμενα SQL Βασικές πράξεις Πράξεις συνόλων Συνενώσεις Συναθροιστικές συναρτήσεις Ομαδοποιήσεις 10/4/2014 Βάσεις Δεδομένων 2 Η γλώσσα

Διαβάστε περισσότερα

ΣΧΕΣΙΑΚΟΣ ΛΟΓΙΣΜΟΣ. Tο Σχεσιακό Μοντέλο Σελίδα 1

ΣΧΕΣΙΑΚΟΣ ΛΟΓΙΣΜΟΣ. Tο Σχεσιακό Μοντέλο Σελίδα 1 ΣΧΕΣΙΑΚΟΣ ΛΟΓΙΣΜΟΣ Tο Σχεσιακό Μοντέλο Σελίδα 1 Τι θα δούµε Σχεσιακός Λογισµός Παραδείγµατα Σχεσιακή Πληρότητα Tο Σχεσιακό Μοντέλο Σελίδα 2 Εισαγωγή στον Σχεσιακό Λογισµό Ο Σχεσιακός Λογισµός (Relational

Διαβάστε περισσότερα

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

Βάσεις Δεδομένων (Databases) Βάσεις Δεδομένων (Databases) ΕΠΛ 342 Χειμερινό Εξάμηνο 2011 Διδάσκοντες Καθηγητές Γιώργος Σαμάρας (ΧΩΔ01 109) Έλεγχος Μέλους Συνόλου (Set Membership) Οι IN και NOT IN τελεστές ελέγχουν για μονό membership

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Βάσεις Δεδομένων Σύνθετα SQL queries Βάσεις Δεδομένων Σύνθετα SQL queries Παύλος Εφραιμίδης Βάσεις Δεδομένων SQL - Μέρος Δεύτερο 1 Ασάφεια και Πλήρη Ονόματα Ονόματα Πεδίων: Στην SQL, τα ονόματα των πεδίων (γνωρισμάτων) σε κάθε σχέση είναι

Διαβάστε περισσότερα

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

ΗΥ-360 Αρχεία και Βάσεις Δεδομένων Διδάσκων: Δ. Πλεξουσάκης. Φροντιστήριο SQL Examples Ξένου Ρουμπίνη ΗΥ-360 Αρχεία και Βάσεις Δεδομένων Διδάσκων: Δ. Πλεξουσάκης Φροντιστήριο SQL Examples Ξένου Ρουμπίνη 1 SQL-DDL Data Definition/Description Language (DDL): προσδιορίζουν τη δομή ή το σχήμα των δεδομένων.

Διαβάστε περισσότερα

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

Βάσεις Δεδομένων Προχωρημένα Ερωτήματα SQL Βάσεις Δεδομένων Προχωρημένα Ερωτήματα SQL Παύλος Εφραιμίδης Βάσεις Δεδομένων SQL - Μέρος Τρίτο 1 Περιεχόμενα Προχωρημένα Ερωτήματα SQL Συνένωση Συναθροιστικές Συναρτήσεις Ομαδοποίηση Βάσεις Δεδομένων

Διαβάστε περισσότερα

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

Περιεχόμενα. Βάσεις Δεδομένων Προχωρημένα Ερωτήματα SQL. Συνένωση Σχέσεων στην SQL2 (3) Συνένωση Σχέσεων στην SQL2. (Join Relations Feature in SQL) Περιεχόμενα Βάσεις Δεδομένων Προχωρημένα Ερωτήματα SQL Παύλος Εφραιμίδης Προχωρημένα Ερωτήματα SQL Συνένωση Συναθροιστικές Συναρτήσεις Ομαδοποίηση Βάσεις Δεδομένων SQL - Μέρος Τρίτο 1 Βάσεις Δεδομένων

Διαβάστε περισσότερα

Query-by-Example (QBE)

Query-by-Example (QBE) Φροντιστήριο 8 o Χειµερινό Εξάµηνο 2009-10 Τµήµα Μηχανικών Η/Υ και Πληροφορικής Πολυτεχνική Σχολή, Πανεπιστήµιο Πατρών Πέµπτη, 3 εκεµβρίου 2009 Τι είναι η QBE; Γλώσσα επερωτήσεων σε σχεσιακές ϐάσεις δεδοµένων

Διαβάστε περισσότερα

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

Βάσεις δεδομένων. (8 ο μάθημα) Ηρακλής Βαρλάμης Βάσεις δεδομένων (8 ο μάθημα) Ηρακλής Βαρλάμης varlamis@hua.gr Περιεχόμενα SQL (συνέχεια) Φωλιασμένες υπο-ερωτήσεις Δημιουργία όψεων Πράξεις ενημέρωσης και περιορισμοί 1/5/2014 Βάσεις Δεδομένων 2 Από το

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

-----------------------------------------------------------------------------------------------------

----------------------------------------------------------------------------------------------------- ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ BΑΣΕΙΣ Ε ΟΜΕΝΩΝ ΕΞΕΤΑΣΗ ΜΑΡΤΙΟΥ 2006 - ΛΥΣΕΙΣ Ι. Βασιλείου -----------------------------------------------------------------------------------------------------

Διαβάστε περισσότερα

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

Κεφάλαιο 3 ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ. I.B. Το Σχεσιακό Μοντέλο Σελίδα 2.1 Κεφάλαιο 3 ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ I.B. Το Σχεσιακό Μοντέλο Σελίδα 2.1 Το Σχεσιακό Μοντέλο και Σχεσιακά Συστήµατα ιοίκησης Βάσεων εδοµένων Σύνοψη Άτυπος και Τυπικός Ορισµός του Μοντέλου οµές, Πράξεις, οµικοί

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ (Relational Model) Μαθ. #10 ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ (Relational Model) Μαθ. #10 Πράξεις Αλλαγής εδοµένων INSERT (εισαγωγή) Αυτός ο τελεστής παρέχει µια λίστα από πεδία τιµών για µια καινούργια πλειάδα η οποία θα εισαχθεί σε µια σχέση R

Διαβάστε περισσότερα

SQL Data Manipulation Language

SQL Data Manipulation Language SQL Data Manipulation Language Τελεστής union συνδυάζει subselects τα οποία παράγουν συμβατές σχέσεις γενική μορφή: subselect {union [all] subselect} περιορισμός: τα subselects δεν μπορούν να περιέχουν

Διαβάστε περισσότερα

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

Βάσεις Δεδομένων (Databases) Βάσεις Δεδομένων (Databases) ΕΠΛ 342 Χειμερινό Εξάμηνο 2011 Διδάσκοντες Καθηγητές Γιώργος Σαμάρας (ΧΩΔ01 109) θεωρητικές Γλώσσες Ερωτήσεων (Formal Query Languages): Σχεσιακή Άλγεβρα Τελεστές Θεωρίας Συνόλων

Διαβάστε περισσότερα

Ασκήσεις -Επανάληψη. Βάσεις Δεδομένων

Ασκήσεις -Επανάληψη. Βάσεις Δεδομένων Ασκήσεις -Επανάληψη Βάσεις Δεδομένων 2016-2017 Ε-R μοντέλα -Flashback. ENTITY SET WEAK ENTITY SET is_a GENERALIZATION RELATIONSHIP SET ATTRIBUTE DERIVED Attribute E2 Total PARTICIPATION of E1 in R1 E2

Διαβάστε περισσότερα

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

Διδάσκων: Παναγιώτης Ανδρέου Διάλεξη 09: Σχεσιακή Άλγεβρα και Σχεσιακός Λογισμός (Relational Algebra/Calculus) Ι Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Εισαγωγή στις έννοιες: Σχεσιακή Πληρότητα Σχεσιακή Άλγεβρα

Διαβάστε περισσότερα

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΟΝΟΜΑΤΕΠΩΝΥΜΟ ΑΡΙΘΜΟΣ ΜΗΤΡΩΟΥ

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΟΝΟΜΑΤΕΠΩΝΥΜΟ ΑΡΙΘΜΟΣ ΜΗΤΡΩΟΥ ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 1.-/30 2.-/20 3.-/20 4.-/30 ΣΥΝΟΛΟ/100 ΟΝΟΜΑΤΕΠΩΝΥΜΟ ΑΡΙΘΜΟΣ ΜΗΤΡΩΟΥ BΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΕΞΕΤΑΣΗ ΣΕΠΤΕΜΒΡΙΟΥ

Διαβάστε περισσότερα

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

Διάλεξη 10: Σχεσιακή Άλγεβρα και Σχεσιακός Λογισμός (Relational Algebra/Calculus) ΙI Διάλεξη 10: Σχεσιακή Άλγεβρα και Σχεσιακός Λογισμός (Relational Algebra/Calculus) ΙI Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Εισαγωγή στις έννοιες: Σχεσιακή Άλγεβρα Τελεστές Συνένωσης

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Lecture 14: SQL DML I

Lecture 14: SQL DML I Department of Computer Science University of Cyprus EPL342 Databases Lecture 14: SQL DML I SQL Structured Query Language (Chapter 8.4, Elmasri-Navathe 5ED) ιδάσκων: Παναγιώτης Ανδρέου http://www.cs.ucy.ac.cy/courses/epl342

Διαβάστε περισσότερα

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

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ. Επιλέγει όλες τις πλειάδες, από μια σχέση R, που ικανοποιούν τη συνθήκη επιλογής. ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Χειμερινό Εξάμηνο 2012 SQL Structured Query Language Δρ. Βαγγελιώ Καβακλή ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ, ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ 1 Πράξεις της σχεσιακής άλγεβρας ΠΡΑΞΗ ΣΚΟΠΟΣ

Διαβάστε περισσότερα

Υποερωτήματα στην SQL Αθανάσιος Σταυρακούδης http://stavrakoudis.econ.uoi.gr 1 / 31 Η ανάγκη για υποερώτημα Ποιος υπάλληλος παίρνει το μεγαλύτερο μισθό; Αν ξέραμε το μεγαλύτερο μισθό, πχ 2000, θα γράφαμε:

Διαβάστε περισσότερα

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

Εισαγωγή στη Σχεσιακή Άλγεβρα Εισαγωγή στη Σχεσιακή Άλγεβρα Η Σχεσιακή Άλγεβρα παρέχει τους τελεστές (operators): Μοναδιαίοι Σχεσιακοί Τελεστές (Unary Relational Ops) Επιλογή (Select, (sigma)) Προβολή (Project, (pi)) Μετονομασία (Rename,

Διαβάστε περισσότερα

Κεφάλαιο 5. Ορισµός Βάσεων εδοµένων µε SQL DDL - Άλλες Γλώσσες Σχεσιακών Βάσεων (QBE) Ι.Β. Σχεσιακές Γλώσσες Εµφύτευση / DDL Σελίδα 2.

Κεφάλαιο 5. Ορισµός Βάσεων εδοµένων µε SQL DDL - Άλλες Γλώσσες Σχεσιακών Βάσεων (QBE) Ι.Β. Σχεσιακές Γλώσσες Εµφύτευση / DDL Σελίδα 2. Κεφάλαιο 5 Ορισµός Βάσεων εδοµένων µε SQL DDL - Άλλες Γλώσσες Σχεσιακών Βάσεων (QBE) Ι.Β. Σχεσιακές Γλώσσες Εµφύτευση / DDL Σελίδα 2.90 SQL Data Definition H Γλώσσα Ορισµού (DDL) της SQL χρησιµοποιείται

Διαβάστε περισσότερα

Lecture 16: SQL DML III

Lecture 16: SQL DML III Department of Computer Science University of Cyprus EPL342 Databases Lecture 16: SQL DML III SQL Structured Query Language (Chapter 8.5.5-8.6, Elmasri-Navathe 5ED) ιδάσκων: Παναγιώτης Ανδρέου http://www.cs.ucy.ac.cy/courses/epl342

Διαβάστε περισσότερα

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

Εισαγωγή στις Βάσεις Δεδομζνων II ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΣΙΑ ΠΑΝΕΠΙΣΗΜΙΟ ΚΡΗΣΗ Εισαγωγή στις Βάσεις Δεδομζνων II Ενότητα: Η γλώσσα SQL Διδάσκων: Πηγουνάκης Κωστής ΤΜΗΜΑ ΟΙΚΟΝΟΜΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΣΧΟΛΗ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ Άδειες Χρήσης Το παρόν εκπαιδευτικό

Διαβάστε περισσότερα

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

Βάσεις εδοµένων 2002-2003 Ευαγγελία Πιτουρά 2 Η Γλώσσα SQL Βάσεις εδοµένων 2002-2003 Ευαγγελία Πιτουρά 1 Η γλώσσα SQL What men or gods are these? What maidens loth? What mad pursuit? What struggle to escape? What pipes and timbrels? What wild ectasy?

Διαβάστε περισσότερα

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

Βάσεις Δεδομένων (Databases) Βάσεις Δεδομένων (Databases) ΕΠΛ 342 Χειμερινό Εξάμηνο 2011 Λογισμός πεδίου τιμών (domain calculus) Διδάσκοντες Καθηγητές Γιώργος Σαμάρας (ΧΩΔ01 109) Σχεσιακό Μοντέλο Ο λογισμός πεδίου τιμών διαφέρει από

Διαβάστε περισσότερα

Υποερωτήματα SQL Παραδείγματα και εφαρμογές από τη βάση δεδομένων company Αθανάσιος Σταυρακούδης http://stavrakoudis.econ.uoi.gr astavrak@uoi.gr @AStavrakoudis Άνοιξη 2016 1 / 55 Περιεχόμενα 1 Απλά υποερωτήματα

Διαβάστε περισσότερα

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

Αρχεία και Βάσεις Δεδομένων ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Αρχεία και Βάσεις Δεδομένων Διάλεξη 10η: SQL Μέρος 3ο Δημήτρης Πλεξουσάκης Τμήμα Επιστήμης Υπολογιστών SQL Data Manipulation Language Τελεστής union συνδυάζει subselects

Διαβάστε περισσότερα

Η αναλυτική περιγραφή της γλώσσας SQL αποτελεί αντικείµενο των σελίδων που ακολουθούν. Η ΓΛΩΣΣΑ ΟΡΙΣΜΟΥ Ε ΟΜΕΝΩΝ

Η αναλυτική περιγραφή της γλώσσας SQL αποτελεί αντικείµενο των σελίδων που ακολουθούν. Η ΓΛΩΣΣΑ ΟΡΙΣΜΟΥ Ε ΟΜΕΝΩΝ Κεφάλαιο 6 SQL Στο κεφάλαιο αυτό παρουσιάζεται η δοµηµένη γλώσσα ερωτοαποκρίσεων (Structured Query Language, SQL) που χρησιµοποιείται για τη διαχείριση των δεδοµένων της βάσης. Η διαχείριση αυτή περιλαµβάνει

Διαβάστε περισσότερα

Κεφάλαιο 8. ΣΧΕ ΙΑΣΜΟΣ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ ΚΑΙ ΚΑΝΟΝΙΚΟΠΟΙΗΣΗ (Normalization) Ι.Β Σχεδιασµός Σχεσιακών Β και Κανονικοποίηση Σελίδα 4.1

Κεφάλαιο 8. ΣΧΕ ΙΑΣΜΟΣ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ ΚΑΙ ΚΑΝΟΝΙΚΟΠΟΙΗΣΗ (Normalization) Ι.Β Σχεδιασµός Σχεσιακών Β και Κανονικοποίηση Σελίδα 4.1 Κεφάλαιο 8 ΣΧΕ ΙΑΣΜΟΣ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ ΚΑΙ ΚΑΝΟΝΙΚΟΠΟΙΗΣΗ (Normalization) Ι.Β Σχεδιασµός Σχεσιακών Β και Κανονικοποίηση Σελίδα 4.1 Σύνοψη Λογικός Σχεδιασµός Σχεσιακών Βάσεων εδοµένων και Κανονικοποίηση

Διαβάστε περισσότερα

Κεφάλαιο 5. Ορισµός Βάσεων εδοµένων µε SQL DDL - Άλλες Γλώσσες Σχεσιακών Βάσεων (QBE) Ι.Β. Σχεσιακές Γλώσσες Εµφύτευση / DDL Σελίδα 2.

Κεφάλαιο 5. Ορισµός Βάσεων εδοµένων µε SQL DDL - Άλλες Γλώσσες Σχεσιακών Βάσεων (QBE) Ι.Β. Σχεσιακές Γλώσσες Εµφύτευση / DDL Σελίδα 2. Κεφάλαιο 5 Ορισµός Βάσεων εδοµένων µε SQL DDL - Άλλες Γλώσσες Σχεσιακών Βάσεων (QBE) Ι.Β. Σχεσιακές Γλώσσες Εµφύτευση / DDL Σελίδα 2.84 SQL Data Definition H Γλώσσα Ορισµού (DDL) της SQL χρησιµοποιείται

Διαβάστε περισσότερα

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

Βάσεις Δεδομένων ΗγλώσσαSQL (Structured Query Language) Βάσεις Δεδομένων ΗγλώσσαSQL (Structured Query Language) Παύλος Εφραιμίδης Βάσεις Δεδομένων Η Γλώσσα SQL - Μέρος Πρώτο 1 SQL - Structured Query Language (1) Ένας από τους βασικούς λόγους της απόλυτης επικράτησης

Διαβάστε περισσότερα

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

Βάσεις Δεδομένων (Databases) Βάσεις Δεδομένων (Databases) ΕΠΛ 342 Χειμερινό Εξάμηνο 2011 Διδάσκοντες Καθηγητές Γιώργος Σαμάρας (ΧΩΔ01 109) Δομημένη Γλώσσα Ερωτήσεων SQL DML Σχεσιακοί Τελεστές Τελεστές Συνόλων Ανάκτηση με NULLs Συνδέσεις-Συνενώσεις

Διαβάστε περισσότερα

Η SQL αποτελείται από δύο υποσύνολα, τη DDL και τη DML.

Η SQL αποτελείται από δύο υποσύνολα, τη DDL και τη DML. Κεφάλαιο 5 Η γλώσσα SQL 5.1 Εισαγωγή Η γλώσσα SQL (Structured Query Language) είναι η πιο διαδεδομένη διαλογική γλώσσα ερωταπαντήσεων που χρησιμοποιείται για την επικοινωνία του χρήστη με σχεσιακές ΒΔ.

Διαβάστε περισσότερα

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

Βάσεις Δεδομένων Η γλώσσα SQL (Structured Query Language) Εισαγωγή στην SQL (2) Ιστορικά Στοιχεία. SQL - Structured Query Language (1) Βάσεις Δεδομένων Η γλώσσα SQL Structured Query Language) Παύλος Εφραιμίδης SQL - Structured Query Language 1) Ένας από τους βασικούς λόγους της απόλυτης επικράτησης των Σχεσιακών ΒΔ Εξασφαλίζει μεταφερσιμότητα

Διαβάστε περισσότερα

GROUP BY, HAVING, COUNT, MIN, MAX, SUM, AVG, ROLLUP.

GROUP BY, HAVING, COUNT, MIN, MAX, SUM, AVG, ROLLUP. SQL: Ερωτήματα ομαδοποίησης και συνάθροισης GROUP BY, HAVING, COUNT, MIN, MAX, SUM, AVG, ROLLUP Αθανάσιος Σταυρακούδης http://stavrakoudis.econ.uoi.gr Άνοιξη 2016 1 / 56 Περιεχόμενα 1 Εισαγωγή, γενικές

Διαβάστε περισσότερα

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

ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ Σχεσιακός Ορισµός. Μαθ. #12 ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ Σχεσιακός Ορισµός Μαθ. #12 Η κυρίως διαφορά µεταξύ «σχεσιακού λογισµού» και «σχεσιακής άλγεβρας» είναι η ακόλουθη ηλωτική vs. ιαδικαστική Τι vs. Πως Η εκφραστική δύναµη των δυο γλωσσών

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Διάλεξη 15: Γλώσσα Επεξεργασίας Δεδομένων/ Data Manipulation Language (SQL DML) III. Διδάσκων: Παναγιώτης Ανδρέου Διάλεξη 15: Γλώσσα Επεξεργασίας Δεδομένων/ Data Manipulation Language (SQL DML) III Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Εισαγωγή στις έννοιες: Προχωρημένες Συνθήκες (LIKE, IS, Συναρτήσεις,

Διαβάστε περισσότερα

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

Βάσεις Δεδομένων. Σχεσιακό Μοντέλο Δεδομένων. Βασίλειος Βεσκούκης Ορισμός Βάσης Δεδομένων Δομή Περιορισμοί Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Αγρονόμων Τοπογράφων Μηχανικών Βάσεις Δεδομένων Βασίλειος Βεσκούκης v.vescoukis@cs.ntua.gr Βασικές πράξεις της Σχεσιακής Αλγεβρας Σχεσιακό Μοντέλο Δεδομένων Ορισμός Βάσης

Διαβάστε περισσότερα

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

#5. Σχεσιακό Μοντέλο 22Γ901 Βάσεις Δεδομένων και Γνώσεων 9ο Εξάμηνο Κύκλου Σπουδών ΗΥ και Μεταπτυχιακός Κύκλος Σπουδών Διδάσκων: Ν. Αβούρης Β μέρος Διαφανειών μαθήματος (2005-2006) Ν. Αβούρης- Βάσεις Δεδομένων και Γνώσεων

Διαβάστε περισσότερα

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

Κεφάλαιο 3 ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ. I.B. Το Σχεσιακό Μοντέλο Σελίδα 1.144 Κεφάλαιο 3 ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ I.B. Το Σχεσιακό Μοντέλο Σελίδα 1.144 Το Σχεσιακό Μοντέλο ΣΥΝΟΨΗ ΚΕΦΑΛΑΙΟΥ Άτυπος και Τυπικός Ορισµός του Μοντέλου οµές, Πράξεις / Λειτουργίες, οµικοί Περιορισµοί Σχεσιακή Άλγεβρα»

Διαβάστε περισσότερα

DELETE, UPDATE, INSERT.

DELETE, UPDATE, INSERT. Ενημέρωση βάσης δεδομένων με SQL DELETE, UPDATE, INSERT Αθανάσιος Σταυρακούδης http://stavrakoudis.econ.uoi.gr Άνοιξη 2014 1 / 88 Περιεχόμενα 1 Γενικά για την αποθήκευση δεδομένων και την ενημέρωση της

Διαβάστε περισσότερα

DELETE, UPDATE, INSERT

DELETE, UPDATE, INSERT Ενημέρωση βάσης δεδομένων με SQL DELETE, UPDATE, INSERT Αθανάσιος Σταυρακούδης http://stavrakoudis.econ.uoi.gr astavrak@uoi.gr @AStavrakoudis Άνοιξη 2016 1 / 103 Περιεχόμενα 1 Γενικά για την αποθήκευση

Διαβάστε περισσότερα

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

Βάσεις Δεδομένων και Ευφυή Πληροφοριακά Συστήματα Επιχειρηματικότητας. 3ο Μάθημα: Εισαγωγή στην SQL. Δρ. Κωνσταντίνος Χ. Βάσεις Δεδομένων και Ευφυή Πληροφοριακά Συστήματα Επιχειρηματικότητας 3ο Μάθημα: Εισαγωγή στην SQL Δρ. Κωνσταντίνος Χ. Γιωτόπουλος SQL Background SQL Structured Query Language Standard query γλώσσα για

Διαβάστε περισσότερα

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

BΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΕΞΕΤΑΣΗ ΦΕΒΡΟΥΑΡΙΟΥ 2005 ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ BΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΕΞΕΤΑΣΗ ΦΕΒΡΟΥΑΡΙΟΥ 2005 ΛΥΣΕΙΣ Ι. Βασιλείου -----------------------------------------------------------------------------------------------------

Διαβάστε περισσότερα

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

ΦΡΟΝΤΙΣΤΗΡΙΟ ΣΤΗ ΓΛΩΣΣΑ SQL ΗΥ360 - ΑΡΧΕΙΑ ΚΑΙ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΦΡΟΝΤΙΣΤΗΡΙΟ ΣΤΗ ΓΛΩΣΣΑ SQL ΛΙΛΙΤΣΗΣ ΠΡΟΔΡΟΜΟΣ ΤΜΗΜΑ ΕΠΙΣΤΗΜΗΣ ΥΠΟΛΟΓΙΣΤΩΝ SQL - STRUCTURED QUERY LANGUAGE 2 Μια γλώσσα επερωτήσεων για τη διαχείριση Σχεσιακών Βάσεων

Διαβάστε περισσότερα

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι Β. Μεγαλοοικονόμου, Δ. Χριστοδουλάκης Σχεσιακό Μοντέλο SQLΜέρος Α Ακ.Έτος 2008-09 (μεβάσητιςσημειώσειςτωνsilberchatz, Korth και Sudarshan και του C. Faloutsos

Διαβάστε περισσότερα

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

Βάσεις δεδομένων. (6 ο μάθημα) Ηρακλής Βαρλάμης Βάσεις δεδομένων (6 ο μάθημα) Ηρακλής Βαρλάμης varlamis@hua.gr (Συνέχεια) ΣΧΕΣΙΑΚΗ ΑΛΓΕΒΡΑ 3/4/2014 2 Περιεχόμενα Συνέχεια στη Σχεσιακή άλγεβρα Συνένωση Θήτα Ισότητας Φυσική Διαίρεση Σύνθετες λειτουργίες

Διαβάστε περισσότερα

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

Βάσεις Δεδομένων. Βασίλειος Βεσκούκης Εισαγωγή στη γλώσσα SQL (Structured Query Language) Η γλώσσα SQL Εθνικό Μετσόβιο ολυτεχνείο Σχολή Αγρονόμων Τοπογράφων Μηχανικών Βάσεις Δεδομένων Βασίλειος Βεσκούκης v.vescoukis@cs.ntua.gr Εισαγωγή στη γλώσσα SQL (Structured Query Language) Η γλώσσα SQL Η γλώσσα SQL

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

ΕΣΔ 232: ΟΡΓΑΝΩΣΗ ΔΕΔΟΜΕΝΩΝ ΣΤΗΝ ΚΟΙΝΩΝΙΑ ΤΗΣ ΠΛΗΡΟΦΟΡΙΑΣ. Ακαδημαϊκό Έτος , Εαρινό Εξάμηνο Διδάσκων Καθ.: Νίκος Τσαπατσούλης

ΕΣΔ 232: ΟΡΓΑΝΩΣΗ ΔΕΔΟΜΕΝΩΝ ΣΤΗΝ ΚΟΙΝΩΝΙΑ ΤΗΣ ΠΛΗΡΟΦΟΡΙΑΣ. Ακαδημαϊκό Έτος , Εαρινό Εξάμηνο Διδάσκων Καθ.: Νίκος Τσαπατσούλης ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ, ΤΜΗΜΑ ΕΠΙΚΟΙΝΩΝΙΑΣ & ΣΠΟΥΔΩΝ ΔΙΑΔΙΚΤΥΟΥ ΕΣΔ 232: ΟΡΓΑΝΩΣΗ ΔΕΔΟΜΕΝΩΝ ΣΤΗΝ ΚΟΙΝΩΝΙΑ ΤΗΣ ΠΛΗΡΟΦΟΡΙΑΣ Ακαδημαϊκό Έτος 2011 2012, Εαρινό Εξάμηνο Καθ.: Νίκος Τσαπατσούλης ΥΠΟΔΕΙΓΜΑ

Διαβάστε περισσότερα

Ορισµοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL

Ορισµοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL Ορισµοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL Βάσεις εδοµένων 2011-2012 Ευαγγελία Πιτουρά 1 Εισαγωγή Μοντελοποίηση Στα προηγούµενα µαθήµατα: Εννοιολογικός Σχεδιασµός Βάσεων Δεδοµένων (µε

Διαβάστε περισσότερα

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

Βάσεις Δεδομένων. Εργαστήριο ΙV. Τμήμα Πληροφορικής ΑΠΘ 2014-2015 Βάσεις Δεδομένων Εργαστήριο ΙV Τμήμα Πληροφορικής ΑΠΘ 2014-2015 2 Σκοπός του 4 ου εργαστηρίου Σκοπός αυτού του εργαστηρίου είναι: η μελέτη ερωτημάτων σύνδεσης η μελέτη ερωτημάτων συνάθροισης 3 Εκφράσεις

Διαβάστε περισσότερα

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

ΦΡΟΝΤΙΣΤΗΡΙΟ ΣΤΗ ΓΛΩΣΣΑ SQL ΓΙΑΝΝΗΣ ΑΓΑΘΑΓΓΕΛΟΣ ΤΜΗΜΑ ΕΠΙΣΤΗΜΗΣ ΥΠΟΛΟΓΙΣΤΩΝ ΗΥ360 - ΑΡΧΕΙΑ ΚΑΙ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΦΡΟΝΤΙΣΤΗΡΙΟ ΣΤΗ ΓΛΩΣΣΑ SQL SQL SQL - STRUCTURED QUERY LANGUAGE 2 Μια γλώσσα επερωτήσεων για τη διαχείριση Σχεσιακών

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Ηλεκτρονικοί Υπολογιστές II

Ηλεκτρονικοί Υπολογιστές II ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Ηλεκτρονικοί Υπολογιστές II SQL Ερωτήματα ομαδοποίησης και συνάθροισης Διδάσκων: Επίκουρος Καθηγητής Αθανάσιος Σταυρακούδης Άδειες Χρήσης Το παρόν εκπαιδευτικό

Διαβάστε περισσότερα

Τμήμα Διοίκησης Επιχειρήσεων

Τμήμα Διοίκησης Επιχειρήσεων Τμήμα Διοίκησης Επιχειρήσεων «Βάσεις Δεδομένων και Ευφυή Πληροφοριακά Συστήματα» «Σημειώσεις για την SQL» ΕΞΑΜΗΝΟ: ΣΤ Δρ. Κωνσταντίνος Χ. Γιωτόπουλος Πάτρα, Νοέμβριος 2010 SQL Create Table Η CREATE TABLE

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ ΕΡΓΑΣΤΗΡΙΟ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ ΜΕΡΟΣ ΤΡΙΤΟ Foreign key, Index, DML Ερωτήµατα Γιώργος Μαρκοµανώλης Περιεχόµενα Foreign Key... 1 Index... 4 DML Ερωτήµατα... 6 INSERT...

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. ΕΠΛ342: Βάσεις Δεδομένων. Χειμερινό Εξάμηνο Φροντιστήριο 10 ΛΥΣΕΙΣ. Επερωτήσεις SQL

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. ΕΠΛ342: Βάσεις Δεδομένων. Χειμερινό Εξάμηνο Φροντιστήριο 10 ΛΥΣΕΙΣ. Επερωτήσεις SQL ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ342: Βάσεις Δεδομένων Χειμερινό Εξάμηνο 2013 Φροντιστήριο 10 ΛΥΣΕΙΣ Επερωτήσεις SQL Άσκηση 1 Για το ακόλουθο σχήμα Suppliers(sid, sname, address) Parts(pid, pname,

Διαβάστε περισσότερα

PROJECT ΕΡΓΑΣΤΗΡΙΩΝ ΒΑΣΕΩΝ ΔΕΔΟΜΕΝΩΝ Ι. Τμήμα Μηχανικών Πληροφορικής Τ.Ε.

PROJECT ΕΡΓΑΣΤΗΡΙΩΝ ΒΑΣΕΩΝ ΔΕΔΟΜΕΝΩΝ Ι. Τμήμα Μηχανικών Πληροφορικής Τ.Ε. Παραδοτέα 1. Το αρχείο.mdb της βάσης δεδομένων σας σε ACCESS 2. Ένα CD που θα αναγράφει το ονοματεπώνυμο του σπουδαστή και το ΑΕΜ και θα περιέχει το αρχείο.mdb της βάσης δεδομένων καθώς και το εγχειρίδιο

Διαβάστε περισσότερα

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι Β. Μεγαλοοικονόμου, Δ. Χριστοδουλάκης Query by Example QBE Ακ.Έτος 2008-09 (μεβάσητιςσημειώσειςτωνsilberchatz, Korth και Sudarshan και του C. Faloutsos CMU)

Διαβάστε περισσότερα

Σχεδιασμός Βάσεων Δεδομένων

Σχεδιασμός Βάσεων Δεδομένων Πανεπιστήμιο Πειραιώς Τμήμα Ψηφιακών Συστημάτων Σχεδιασμός Βάσεων Δεδομένων Εργαστήριο 4 Δρ. Βασιλική Κούφη Περιεχόμενα Υλοποίηση Βάσεως Δεδομένων Εκτέλεση ερωτημάτων SQL στην Βάση Δεδομένων BHMA 1. Σχεδιασμός

Διαβάστε περισσότερα

ΗΓλώσσαSQL. Εισαγωγή Βασικές Έννοιες Τύποι Δεδομένων Ορισμός Δεδομένων Χειρισμός Δεδομένων

ΗΓλώσσαSQL. Εισαγωγή Βασικές Έννοιες Τύποι Δεδομένων Ορισμός Δεδομένων Χειρισμός Δεδομένων ΗΓλώσσαSQL Εισαγωγή Βασικές Έννοιες Τύποι Δεδομένων Ορισμός Δεδομένων Χειρισμός Δεδομένων Εισαγωγή Η δομημένη γλώσσα ερωτημάτων SQL (Structured Query Language) χρησιμοποιείται για τους χρήστες του ΣΔΒΔ

Διαβάστε περισσότερα

SQL Data Definition. REFERENCES (foreign key), CHECKκαι PRIMARY KEY (key)

SQL Data Definition. REFERENCES (foreign key), CHECKκαι PRIMARY KEY (key) Κεφάλαια 4, 4, 5, 5, 6 - Ορισµός Βάσεων εδοµένων µε SQL DDL -ΠεριορισµοίΑκεραιότηταςστην SQL -Περιβάλλοντα Χρήσης της SQL (API) - Άλλες Γλώσσες Σχεσιακών Βάσεων (QBE) Ι.Β. ΣχεσιακέςΓλώσσες Εµφύτευση /

Διαβάστε περισσότερα

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

SQL. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 SQL Βάσεις Δεδομένων 2013-2014 Ευαγγελία Πιτουρά 1 Τι είδαμε μέχρι τώρα Δύο γλώσσες ερωτήσεων που αποτελούν το θεωρητικό υπόβαθρο Σχεσιακή άλγεβρα: μια άλγεβρα συνόλων που αφορά πράξεις πάνω σε σχέσεις

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ ΕΡΓΑΣΤΗΡΙΟ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ ΜΕΡΟΣ ΤΕΤΑΡΤΟ Insert, Update, Delete, Ένωση πινάκων Γιώργος Μαρκοµανώλης Περιεχόµενα Group By... 1 Having...1 Οrder By... 2 Εντολή Insert...

Διαβάστε περισσότερα

Ηλεκτρονικοί Υπολογιστές II

Ηλεκτρονικοί Υπολογιστές II ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Ηλεκτρονικοί Υπολογιστές II Ενημέρωση βάσης δεδομένων με τις εντολές INSERT, DELETE, UPDATE Διδάσκων: Επίκουρος Καθηγητής Αθανάσιος Σταυρακούδης Άδειες

Διαβάστε περισσότερα

ΣΧΕΔΙΑΣΜΟΣ ΒΑΣΕΩΝ ΔΕΔΟΜΕΝΩΝ ΚΑΙ ΚΑΝΟΝΙΚΟΠΟΙΗΣΗ. Σχεδιασμός Σχεσιακών ΒΔ και Κανονικοποίηση 1

ΣΧΕΔΙΑΣΜΟΣ ΒΑΣΕΩΝ ΔΕΔΟΜΕΝΩΝ ΚΑΙ ΚΑΝΟΝΙΚΟΠΟΙΗΣΗ. Σχεδιασμός Σχεσιακών ΒΔ και Κανονικοποίηση 1 ΣΧΕΔΙΑΣΜΟΣ ΒΑΣΕΩΝ ΔΕΔΟΜΕΝΩΝ ΚΑΙ ΚΑΝΟΝΙΚΟΠΟΙΗΣΗ Σχεδιασμός Σχεσιακών ΒΔ και Κανονικοποίηση 1 Σύνοψη Σχεσιακός Σχεδιασμός - Στόχοι Κριτήρια / Οδηγίες για ένα καλό Σχεδιασμό Συναρτησιακές Εξαρτήσεις - Οι

Διαβάστε περισσότερα

2 ο Σύνολο Ασκήσεων. Βάσεις Δεδομένων 2013-2014 Ευαγγελία Πιτουρά 1

2 ο Σύνολο Ασκήσεων. Βάσεις Δεδομένων 2013-2014 Ευαγγελία Πιτουρά 1 2 ο Σύνολο Ασκήσεων Οι βαθμοί θα ανακοινωθούν αύριο μαζί με τους βαθμούς της προγραμματιστικής άσκησης Τα αστεράκια δείχνουν τον εκτιμώμενο βαθμό δυσκολίας (*) εύκολο (**) μέτριο (***) δύσκολο Βάσεις Δεδομένων

Διαβάστε περισσότερα

Διαχείριση Πολιτισμικών Δεδομένων

Διαχείριση Πολιτισμικών Δεδομένων Διαχείριση Πολιτισμικών Δεδομένων Μάθημα 7 Γλώσσα Ερωτημάτων SQL Τζανέτος Πομόνης ΤΕΙ Ιονίων Νήσων Τμήμα Τεχνολόγων Περιβάλλοντος Κατεύθυνση Συντήρησης Πολιτισμικής Κληρονομιάς Βασικές Έννοιες Σχεσιακή

Διαβάστε περισσότερα

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

Εισαγωγή στις Βάσεις Δεδομζνων II ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΣΙΑ ΠΑΝΕΠΙΣΗΜΙΟ ΚΡΗΣΗ Εισαγωγή στις Βάσεις Δεδομζνων II Ενότητα: Σχεσιακή Άλγεβρα Διδάσκων: Πηγουνάκης Κωστής ΤΜΗΜΑ ΟΙΚΟΝΟΜΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΣΧΟΛΗ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ Άδειες Χρήσης Το παρόν

Διαβάστε περισσότερα

Εισαγωγή Mια από τις βασικές λειτουργίες ενός σχεσιακού συστήµατος διαχείρισης βάσεων δεδοµένων είναι η διαχείριση του πληροφοριακού περιεχοµένου που

Εισαγωγή Mια από τις βασικές λειτουργίες ενός σχεσιακού συστήµατος διαχείρισης βάσεων δεδοµένων είναι η διαχείριση του πληροφοριακού περιεχοµένου που ΤΕΙ ΑΘΗΝΩΝ ΣΧΟΛΗ Σ Ο ΤΜΗΜΑ ΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ ΧΕΙΜΕΡΙΝΟ ΕΞΑΜΗΝΟ 2009-2010 Η/Υ ΙΙΙ ΒΑΣΕΙΣ Ε ΟΜΕΝΩΝ (Θεωρία) ΜΑΘΗΜΑ 4ο Η γλώσσα βάσεων δεδοµένων SQL, η γλώσσα QBE. Αθανασίου Ειρήνη, MSc 1 Εισαγωγή Mια

Διαβάστε περισσότερα

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

Κεφάλαιο 3. ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ B Μέρος. Tο Σχεσιακό Μοντέλο Σελίδα 1 Κεφάλαιο 3 ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ B Μέρος Tο Σχεσιακό Μοντέλο Σελίδα 1 Το Σχεσιακό Μοντέλο ΣΥΝΟΨΗ ΚΕΦΑΛΑΙΟΥ Σχεσιακή Άλγεβρα Επέκταση της Σχεσιακής Άλγεβρας Παραδείγµατα Όψεις Κανόνες Ακεραιότητας Πράξεις Αλλαγών

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Lecture 15: SQL DML II

Lecture 15: SQL DML II Department of Computer Science University of Cyprus EPL342 Databases Lecture 15: SQL DML II SQL Structured Query Language (Chapter 8.4-8.5, Elmasri-Navathe 5ED) ιδάσκων: Παναγιώτης Ανδρέου http://www.cs.ucy.ac.cy/courses/epl342

Διαβάστε περισσότερα

ΕΞΕΤΑΣΤΕΑ ΥΛΗ (SYLLABUS) Ενότητα Advanced Βάσεις Δεδομένων, Προχωρημένο Επίπεδο. Copyright 2013 ECDL Foundation Ref: SL_AM3_Syl2.

ΕΞΕΤΑΣΤΕΑ ΥΛΗ (SYLLABUS) Ενότητα Advanced Βάσεις Δεδομένων, Προχωρημένο Επίπεδο. Copyright 2013 ECDL Foundation Ref: SL_AM3_Syl2. ΕΞΕΤΑΣΤΕΑ ΥΛΗ (SYLLABUS) Ενότητα Advanced Βάσεις Δεδομένων, Προχωρημένο Επίπεδο Copyright 2013 ECDL Foundation Ref: SL_AM3_Syl2.0_v1 Page 17 of 29 Βάσεις Δεδομένων, Προχωρημένο Επίπεδο Ακολουθεί η Εξεταστέα

Διαβάστε περισσότερα

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

Σχεσιακή Άλγεβρα και Σχεσιακός Λογισμός. Σχεσιακή Άλγεβρα Σχεσιακός Λογισμός 7 Σχεσιακή Άλγεβρα και Σχεσιακός Λογισμός Σχεσιακή Άλγεβρα Σχεσιακός Λογισμός Σχεσιακή Άλγεβρα H Σχεσιακή Άλγεβρα (relational algebra) ορίζει ένα σύνολο πράξεων που εφαρμόζονται σε μία ή περισσότερες σχέσεις

Διαβάστε περισσότερα

Κλειδιά (keys) Λογικά, σκεφτόµαστε για «κλειδιά» σαν τα δεδοµένα (τα πεδία) εκείνα τα οποία µας επιτρέπουν να ξεχωρίσουµε τις διάφορες εγγραφές

Κλειδιά (keys) Λογικά, σκεφτόµαστε για «κλειδιά» σαν τα δεδοµένα (τα πεδία) εκείνα τα οποία µας επιτρέπουν να ξεχωρίσουµε τις διάφορες εγγραφές Κλειδιά (keys) Key (κλειδί) Λογικά, σκεφτόµαστε για «κλειδιά» σαν τα δεδοµένα (τα πεδία) εκείνα τα οποία µας επιτρέπουν να ξεχωρίσουµε τις διάφορες εγγραφές Σούπερκλειδί (superkey) Ένα πεδίο ορισµού ή

Διαβάστε περισσότερα

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

ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ. Relational Model Μαθ. #9 ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ Relational Model Μαθ. #9 Σχεσιακό Μοντέλο Μεταφορά E-R ιαγράµµατος σε Σχέσεις Μια οντότητα «Ε» Μεταφράζεται σε µια σχέση της οποίας το σχήµα αποτελείται από όλα τα γνωρίσµατα του «Ε» Εάν

Διαβάστε περισσότερα

SQL: Αιτήματα. ( Συνέχεια...) Κεφάλαιο 5. Ενηµέρωση: 23/12/2008. Database Management Systems, R. Ramakrishnan and J. Gehrke

SQL: Αιτήματα. ( Συνέχεια...) Κεφάλαιο 5. Ενηµέρωση: 23/12/2008. Database Management Systems, R. Ramakrishnan and J. Gehrke SQL: Αιτήματα ( Συνέχεια...) Κεφάλαιο 5 Ενηµέρωση: 23/12/2008 Database Management Systems, R. Ramakrishnan and J. Gehrke Τελεστές Συνάθροισης Σημαντική π ροέκταση της σχεσιακής άλγεβρας. COUNT (*) COUNT

Διαβάστε περισσότερα

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

Department of Computer Science University of Cyprus. EPL342 Databases. Lecture 10: RA IΙ. RA Advanced + Examples Department of Computer Science University of Cyprus EPL342 Databases Lecture 10: RA IΙ RA Advanced + Examples (Chapter 6.4-6.5, Elmasri-Navathe 5ED) ιδάσκων: Παναγιώτης Ανδρέου http://www.cs.ucy.ac.cy/courses/epl342

Διαβάστε περισσότερα

Lecture 8: RM I + RA I

Lecture 8: RM I + RA I Department of Computer Science University of Cyprus EPL342 Databases Lecture 8: RM I + RA I Relational Model + Relational Algebra (Chapter 5.2-5.3, 6.1 Elmasri-Navathe 7ED) Demetris Zeinalipour http://www.cs.ucy.ac.cy/courses/epl342

Διαβάστε περισσότερα

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

Τμήμα Πληροφορικής ΑΠΘ 2013-2014 Βάσεις Δεδομένων Εργαστήριο V Τμήμα Πληροφορικής ΑΠΘ 2013-2014 2 Σκοπός του 5 ου εργαστηρίου Σκοπός αυτού του εργαστηρίου είναι: η μελέτη ερωτημάτων τροποποίησης δομής / δεδομένων η μελέτη σύνθετων ερωτημάτων

Διαβάστε περισσότερα

2. Να τροποποιηθεί κατάλληλα η παραπάνω παράσταση ώστε στο αποτέλεσµα να προκύπτουν τα ονοµατα των προµηθευτών και όχι οι κωδικοί τους (Μονάδες 1,0)

2. Να τροποποιηθεί κατάλληλα η παραπάνω παράσταση ώστε στο αποτέλεσµα να προκύπτουν τα ονοµατα των προµηθευτών και όχι οι κωδικοί τους (Μονάδες 1,0) Ιούνιος 2003: Θέµα 2 (Μονάδες 4,0) Δίνεται το ακόλουθο σχεσιακό σχήµα: Suppliers(sid: integer, sname: string, address: string) Parts(pid: integer, pname: string, color: string) Catalog(sid: integer, pid:

Διαβάστε περισσότερα

ΣΧΕΔΙΑΣΜΟΣ ΒΑΣΕΩΝ ΔΕΔΟΜΕΝΩΝ ΕΡΓΑΣΤΗΡΙΟ 3

ΣΧΕΔΙΑΣΜΟΣ ΒΑΣΕΩΝ ΔΕΔΟΜΕΝΩΝ ΕΡΓΑΣΤΗΡΙΟ 3 ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΣΧΕΔΙΑΣΜΟΣ ΒΑΣΕΩΝ ΔΕΔΟΜΕΝΩΝ ΕΡΓΑΣΤΗΡΙΟ 3 ΔΕΣΠΟΙΝΑ ΠΑΠΑΚΩΝΣΤΑΝΤΙΝΟΥ dpap@unipi.gr 2 ΤΙ ΕΙΝΑΙ Η SQL? (1/2) Η SQL (Structured Query Language) αποτελεί μια πρότυπη

Διαβάστε περισσότερα

Κεφάλαιο 3 Σχεσιακό Μοντέλο

Κεφάλαιο 3 Σχεσιακό Μοντέλο Κεφάλαιο 3 Σχεσιακό Μοντέλο Στο κεφάλαιο αυτό παρουσιάζεται το σχεσιακό µοντέλο βάσεων δεδοµένων, και αναλύονται τα δοµικά του χαρακτηριστικά, οι βασικές του ιδιότητες, και ο τρόπος µε τον οποίο µπορεί

Διαβάστε περισσότερα

ΕΣΔ 232: ΟΡΓΑΝΩΣΗ ΔΕΔΟΜΕΝΩΝ ΣΤΗ ΚΟΙΝΩΝΙΑ ΤΗΣ ΠΛΗΡΟΦΟΡΙΑΣ. Ακαδημαϊκό Έτος 2011 2012, Εαρινό Εξάμηνο. Εργαστηριακή Άσκηση 4 7/02/2012

ΕΣΔ 232: ΟΡΓΑΝΩΣΗ ΔΕΔΟΜΕΝΩΝ ΣΤΗ ΚΟΙΝΩΝΙΑ ΤΗΣ ΠΛΗΡΟΦΟΡΙΑΣ. Ακαδημαϊκό Έτος 2011 2012, Εαρινό Εξάμηνο. Εργαστηριακή Άσκηση 4 7/02/2012 ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ, ΤΜΗΜΑ ΕΠΙΚΟΙΝΩΝΙΑΣ & ΣΠΟΥΔΩΝ ΔΙΑΔΙΚΤΥΟΥ ΕΣΔ 232: ΟΡΓΑΝΩΣΗ ΔΕΔΟΜΕΝΩΝ ΣΤΗ ΚΟΙΝΩΝΙΑ ΤΗΣ ΠΛΗΡΟΦΟΡΙΑΣ Ακαδημαϊκό Έτος 2011 2012, Εαρινό Εξάμηνο Εργαστηριακή Άσκηση 4 7/02/2012

Διαβάστε περισσότερα

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

Kεφ.2: Σχεσιακό Μοντέλο (επανάληψη) Κεφ.6.1: Σχεσιακή Άλγεβρα Kεφ.2: Σχεσιακό Μοντέλο (επανάληψη) Κεφ.6.1: Σχεσιακή Άλγεβρα Database System Concepts, 6 th Ed. Silberschatz, Korth and Sudarshan See www.db-book.com for conditions on re-use Παράδειγμα Σχέσης attributes

Διαβάστε περισσότερα