Διάλεξη 15: Γλώσσα Επεξεργασίας Δεδομένων/ Data Manipulation Language (SQL DML) III. Διδάσκων: Παναγιώτης Ανδρέου
|
|
- Ἀριστόδημε Κορωναίος
- 8 χρόνια πριν
- Προβολές:
Transcript
1 Διάλεξη 15: Γλώσσα Επεξεργασίας Δεδομένων/ Data Manipulation Language (SQL DML) III Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Εισαγωγή στις έννοιες: Προχωρημένες Συνθήκες (LIKE, IS, Συναρτήσεις, κα.) Εμφωλευμένες Επερωτήσεις (ΙΝ, EXISTS) Διαίρεση Διδάσκων: Παναγιώτης Ανδρέου EPL342: Databases
2 Προχωρημένες συνθήκες επιλογής/ελέγχου Οι συνθήκες επιλογής/ελέγχου Θ δεν συμπεριλαμβάνουν πάντα ισότητες ή ανισότητες WHERE NAME LIKE Beer% ADD CONSTRAINT C_TEST CHECK (NAME LIKE Beer% ) Μπορούν να είναι αρκετά περίπλοκές και να κάνουν χρήση συναρτήσεων Σημαντικοί τελεστές/συναρτήσεις LIKE: Σύγκριση συμβολοσειρών Συναρτήσεις: SUBSTRING, SOUNDEX, DATEDIFF Σημαντικό να γνωρίζουμε τι υποστηρίζει η ΒΔ IS: Σύγκριση με NULL, ISNULL IN: Σύγκριση με σύνολα EPL342: Databases
3 Σύγκριση Συμβολοσειρών με LIKE Για την σύγκριση συμβολοσειρών (substring matching) σε SQL γίνεται χρήση του LIKE. WHERE Attribute [ NOT ] LIKE Pattern Attribute: Γνώρισμα ή οποιαδήποτε έγκυρη έκφραση. Pattern: Συμβολοσειρά (υπό μορφή «Κανονικής Έκφρασης») η οποία θα αναζητηθεί στο attribute. To Pattern μπορεί να περιέχει χαρακτήρες wildcard Το pattern μπορεί να είναι μέχρι 8,000 bytes στην TSQL Παράδειγμα SELECT FirstName, LastName, Phone FROM Person.Contact WHERE phone LIKE '415%' EPL342: Databases
4 Σύγκριση Συμβολοσειρών με LIKE Wildcard character Περιγραφή Παράδειγμα % _ (underscore) Συμβολοσειρά 0 ή περισσοτέρων χαρακτήρων Οποιοσδήποτε Χαρακτήρας WHERE title LIKE '%computer%' finds all book titles with the word 'computer' anywhere in the book title. WHERE name LIKE '_ean finds all four-letter first names that end with ean (Dean, Sean, and so on). [ ] Οποιοσδήποτε χαρακτήρας σε εύρος ([a-f]) ή σύνολο([abcdef]). WHERE name LIKE '[C-P]arsen' finds author last names ending with arsen and starting with any single character between C and P, for example Carsen, Larsen, Karsen, and so on.. [^] Οποιοσδήποτε χαρακτήρας που ΕΝ είναι σε ευρος ([^a-f]) ή σύνολο ([^abcdef]). WHERE name LIKE 'de[^l]%' all author last names starting with de and where the following letter is not l. EPL342: Databases
5 Σύγκριση Συμβολοσειρών με LIKE Παράδειγμα: Βρες τους υπαλλήλους που γεννήθηκαν κατά την δεκαετία του 1950s. Θεωρήστε ότι η ημερομηνία έχει την μορφοποίηση: MMDDYYYY Συνεπώς, ψάχνουμε το BDATE με τιμή 1 9 5_', όπου το underscore υποδηλώνει ένα αυθαίρετο χαρακτήρα. SELECT FNAME, LNAME FROM EMPLOYEE WHERE BDATE LIKE 1 9 5_ Παράδειγμα: Βρες τα προϊόντα που το όνομα τους είναι Πανάκια για + 1 ή 2 ή 3 χρόνια. SELECT * FROM PRODUCTS WHERE PNAME LIKE Πανάκια για [123] χρόνια EPL342: Databases
6 Παραδείγματα Συναρτήσεων SELECT LastName, SUBSTRING(FirstName, 1, 1) AS Initial SELECT FNAME, LNAME, 1.1*SALARY AS T_SALARY SELECT SOUNDEX(Name) Επιστρέφει ένα κωδικό 4 χαρακτήρων που μπορεί να αξιοποιηθεί για να αποτιμηθεί εάν 2 strings ακούγονται το ίδιο Π.χ., SELECT SOUNDEX ('Smith'), SOUNDEX ('Smythe'); Επιστρέφει S530 S530 SELECT DIFFERENCE(Name, Surname) Βρίσκει την ομοιότητα δυο γνωρισμάτων βάσει του SOUNDEX code. Λαμβάνει υπόψη τα πρώτα 8000 bytes των char, varchar ή text Παίρνει τιμές από 0 (καμία ομοιότητα).. 4 (ίδια) και πολλές άλλες EPL342: Databases
7 Συγκρίσεις με NULL Σε τυπικές γλώσσες προγραμματισμού, οι λογικές εκφράσεις αποτιμούνται σε TRUE ή FALSE. Στην SQL ωστόσο, η ύπαρξη NULL τιμών επιβάλει την χρήση της Λογικής Τριών Τιμών (Three value logic 3VL) Συγκεκριμένα, μια λογική έκφραση μπορεί να αποτιμηθεί σε TRUE, FALSE ή UNKNOWN Π.χ., NULL AND TRUE αποτιμάται σε UNKNOWN Η αποτίμηση λογικών εκφράσεων γίνεται με βάσει των ακόλουθων πινάκων αληθείας: EPL342: Databases
8 Συγκρίσεις με NULL Παράδειγμα CREATE TABLE test ( id INTEGER PRIMARY KEY, age INTEGER CHECK (age < 0 AND age = 0 AND age> 0) ) Τι θα γίνει εάν προσπαθήσουμε να εισάγουμε το age=null; Θα απαγορέψει την εισαγωγή οποιασδήποτε τιμής ωστόσο μπορεί να εισαχθεί το NULL Για να αποφύγω και τα NULL πλήρως: CREATE TABLE test (id INTEGER PRIMARY KEY, age INTEGER NOT NULL CHECK (.) ); EPL342: Databases
9 Συγκρίσεις με NULL Μια έκφραση WHERE Attribute=NULL, είναι λάθος Για σύγκριση ενός γνωρίσματος με NULL στην SQL χρησιμοποιείται η έκφραση IS NULL ή NOT IS NULL. Επισημάνσεις ANSI: Δυο NULL τιμές είναι ανεξάρτητες (διαφορετικές) MSSQL: ΔΥΟ NULL τιμές είναι οι ίδιες (εξ ορισμού). Επομένως σε UNIQUE πεδίο δεν μπορούμε να έχουμε δυο εγγραφές με τιμή NULL. Αυτό, επειδή υπάρχει η εξ ορισμού ρύθμιση ANSI_NULLS OFF (στις ρυθμίσεις μιας βάσης) Εάν ενεργοποιηθεί η εν λόγω μεταβλητή, με SET ANSI_NULLS ON, τότε δυο διακριτές NULL τιμές θα θεωρούνται διαφορετικές όπως άλλωστε προβλέπει και το ANSI πρότυπο. Χρήσιμη συνάρτηση: ISNULL(<attr>, <default>) αν το <attr> είναι null τότε επιστρέφει μία default τιμή <default> EPL342: Databases
10 Συγκρίσεις με Σύνολα (ΙΝ) Όταν θέλουμε να συγκρίνουμε με ένα σύνολο διακριτών τιμών τότε μπορούμε να χρησιμοποιήσουμε τον τελεστή σύγκρισης IN (παρόμοια με SQL DDL) Π.χ., SELECT * FROM PERSON WHERE DNO IN (1, 2) Το ΙΝ έχει αντίστοιχη λογική με τον τελεστή συνόλων και μας επιτρέπει να ομαδοποιήσουμε πολλές συνθήκες OR μαζί. Π.χ., SELECT * FROM PERSON WHERE DNO=1 OR DNO=2 Αν είχαμε 100 διαφορετικές συνθήκες; 100 διαφορετικά OR ή μία λίστα (σύνολο) με 100 τιμές και σύγκριση με ΙΝ Τι συμβαίνει αν δεν ξέρουμε εκ των προτέρων το σύνολο με τις διακριτές τιμές; EPL342: Databases
11 Εμφωλευμένες Επερωτήσεις (Nested Queries) Οι εμφωλευμένες επερωτήσεις μας επιτρέπουν να εκφράσουν κάποιο αποτέλεσμα που είναι σύνολο (πίνακας) Π.χ., SELECT * FROM PERSON Outer scope WHERE DNO IN ( SELECT DNO FROM DEPARTMENT WHERE DNAME = ACC OR DNAME = IT ) Inner scope Παρόμοια με τις γλώσσες προγραμματισμού, υπάρχει η έννοια της εμβέλειας (scope) Στο εσωτερικό scope μπορούμε να αναφερθούμε σε πίνακες του εξωτερικού scope EPL342: Databases
12 Εμφωλευμένες Επερωτήσεις (συν.) Με τις εμφωλευμένες επερωτήσεις και τον τελεστή IN μπορούμε να απαντήσουμε και τις επερωτήσεις που παρουσίαζαν πρόβλημα με τη σύγκριση τιμής με σύνολο Παράδειγμα: Βρες τον υπάλληλος με το μέγιστο μισθό SELECT * FROM EMPLOYEE WHERE SALARY = MAX(SALARY) ΛΑΘΟΣ SELECT * FROM EMPLOYEE WHERE SALARY ΙΝ ( SELECT MAX(SALARY) FROM EMPLOYEE ) ΟΡΘΟ EPL342: Databases
13 Εμφωλευμένες Επερωτήσεις (συν.) ΚΑΘΕ Εμφωλευμένη Επερώτηση μπορεί να αναπαρασταθεί από Επερώτηση 1 μπλοκ με χρήση πράξεων συνόλων, συνενώσεις ή συνδυασμό. Δεν είναι αποδοτική πράξη γι αυτό πρέπει να αποφεύγεται όπου είναι δυνατό Μία ΒΔ συνήθως περιορίζει τον αριθμό αναδρομικών εμφωλεύσεων (π.χ., στην TSQL μέχρι 32 επίπεδα). Συνήθως χρησιμοποιούνται για δημιουργία δυναμικών όψεων (views) Μπορούν να εκφράσουν τα ενδιάμεσα αποτελέσματα της ΣΑ SELECT * FROM (SELECT * FROM PARTS WHERE PID>5) Q1 INNER JOIN (SELECT * FROM CATALOG WHERE SID>5) Q2 ON Q1.SID=Q2.SID EPL342: Databases
14 Συσχετιζόμενες Εμφωλευμένες Επερωτήσεις Όταν μια συνθήκη στο WHERE του Outer block αναφέρεται σε κάποιο γνώρισμα του Inner block τότε οι δυο επερωτήσεις λέγεται ότι είναι Συσχετιζόμενες (Correlated) Query: Βρες το όνομα κάθε employee που έχει ένα dependent με το ίδιο όνομα με τον employee. SELECT FROM WHERE E.FNAME, E.LNAME EMPLOYEE E E.SSN IN (SELECT D.ESSN FROM DEPENDENT D WHERE D.ESSN=E.SSN AND E.FNAME=D.DEPENDENT_NAME) EPL342: Databases
15 Εμφωλευμένες Επερωτήσεις (ALL, ANY) Οι τελεστές ANY και ALL, χρησιμοποιούνται σε συνδυασμό με τους αριθμητικούς τελεστές σύγκρισης σε εμφωλευμένες επερωτήσεις Επιτρέπουν την σύγκριση τιμής με όλες τις τιμές κάποιου συνόλου που είναι το αποτέλεσμα μίας εμφ. επερώτησης Παράδειγμα SELECT * FROM EMPLOYEE WHERE SALARY >= ALL ( SELECT SALARY FROM EMPLOYEE ) ALL: οι πλειάδες που επιστρέφονται ικανοποιούν την συνθήκη για όλες τις πλειάδες της εμφ. ερώτησης ΑΝΥ: οι πλειάδες που επιστρέφονται ικανοποιούν την συνθήκη για τουλάχιστον μία πλειάδα της εμφ. ερώτησης Ο τύπος του γνωρίσματος (π.χ., SALARY) πρέπει να συμφωνεί με τον τύπο της εμφωλευμένης ερώτησης EPL342: Databases
16 Εμφωλευμένες Επερωτήσεις (EXISTS) Η εντολή EXISTS επιστρέφει TRUE εάν το αποτέλεσμα μιας εμφωλευμένης επερώτησης υπάρχει (ΔΕΝ είναι κενό/null) WHERE [ΝΟΤ] EXISTS subquery Το EXISTS έχει αντίστοιχη λογική με τον υπαρξιακό ποσοδείκτη x Παρόμοια το NOT EXISTS επιστρέφει TRUE εάν το αποτέλεσμα μιας εμφωλευμένης επερώτησης ΔΕΝ υπάρχει (είναι κενό/null) To EXISTS μπορεί να διατυπωθεί και με άλλους τρόπους (π.χ., IN) Παράδειγμα: Βρες το όνομα κάθε employee που έχει ένα dependent με το ίδιο όνομα με τον employee. SELECT E.FNAME, E.LNAME FROM EMPLOYEE E WHERE EXISTS ( SELECT * FROMDEPENDENT D WHERE E.SSN=D.ESSN AND E.NAME = D.DEPENDENT_NAME) EPL342: Databases
17 Διαίρεση Παρόλο που οι αρχικές εκδόσεις της SQL όριζαν εξειδικευμένη εντολή διαίρεσης, την CONTAINS, μια τέτοια δυνατότητα ΔΕΝ υπάρχει στα νεότερα πρότυπα και υλοποιήσεις: Ενδεχόμενοι Λόγοι Εγκατάλειψης του CONTAINS: Δυσκολία Αποδοτικής Υλοποίησης Μειωμένη Χρήση της εν λόγω εντολής Στα πλαίσια αυτού του μαθήματος θεωρήστε ότι ΔΕΝ υπάρχει η εντολή διαίρεσης CONTAINS Για να διαιρέσουμε δυο σχέσεις θα χρησιμοποιήσουμε την λογική του NOT EXISTS. EXCEPT που ακολουθεί. Σημειώστε ότι σε TSQL, η εντολή CONTAINS χρησιμοποιείται για κάτι διαφορετικό την αναζήτηση σε πεδία κειμένου (όπως η LIKE) Παράδειγμα Διαίρεσης: Βρες τα ονόματα των employees που δουλεύει σε ΚΑΘΕ project που ελέγχεται από το department 5 EPL342: Databases
18 Παράδειγμα Διαίρεσης 1 Βρες τα ονόματα των employees που δουλεύει σε ΚΑΘΕ project που ελέγχεται από το department 5 5 SELECT E.FNAME, E.LNAME FROM EMPLOYEE E WHERE NOT EXISTS ( SELECT P.Pnumber FROM PROJECT P WHERE P.Dnum=5 EXCEPT SELECT W.PNO Συσχέτιση κάθε υπαλλήλου στο FROM WORKS_ON W εξωτερικό block, με τα projects WHERE E.SSN=W.ESSN τα οποία δουλεύει που θέλουμε ) να συσχετίσουμε με το πρώτο εσωτερικό block EPL342: Databases
19 Παράδειγμα Διαίρεσης 2 Suppliers(sid, sname, address) sid sname Address s1 Supplier 1 Address 1 s2 Supplier 2 Address 2 s3 Supplier 3 Address 3 s4 Supplier 4 Address 4 Parts(pid, pname, color) pid pname color p1 Part 1 red p2 Part 2 red p3 Part 3 green p4 Part 4 blue Query: Βρες τoυς suppliers που πουλάνε τα parts p2 και p4 Query: Βρες τoυς suppliers που δεν υπάρχει part (μέσα στη λίστα με τα parts p2 και p4) που να μην τα παρέχουν sid pid cost s1 p1 100 s1 p2 150 s1 p3 100 s1 p4 200 s2 p1 100 s2 p2 150 s3 p2 100 s4 p2 200 s4 p4 250 Διπλή Άρνηση Διπλό NOT EXISTS EPL342: Databases
20 Παράδειγμα Διαίρεσης 2 Query: Βρες τoυς suppliers που δεν υπάρχει part (μέσα στη λίστα με τα parts p2 και p4) που να μην τα παρέχουν A: SELECT s.sid FROM suppliers s WHERE NOT EXISTS ( SELECT p.pid FROM parts p WHERE pid IN ('p2', 'p4') AND NOT EXISTS ( SELECT c.pid from catalog c WHERE s.sid = c.sid AND p.pid=c.pid) ) B: SELECT s.sid FROM suppliers s WHERE NOT EXISTS ( SELECT p.pid FROM parts p WHERE p.pid IN ('p2', 'p4') EXCEPT SELECT c.pid FROM catalog c WHERE s.sid=c.sid) Γ: SELECT s.sid FROM suppliers s WHERE NOT EXISTS ( SELECT p.pid FROM parts p WHERE pid IN ('p2', 'p4') AND pid NOT IN (SELECT pid FROM catalog c WHERE s.sid=c.sid) ) EPL342: Databases
21 Τελεστής Διαίρεσης (Division Operator) R S R/ S= { x (x,y) R y S} Είσοδος: Δύο σχέσεις R και S Έξοδος: Νέα σχέση η οποία περιλαμβάνει τις πλειάδες της R οι οποίες μπορούν να συνενωθούν με κάθε πλειάδα της S σύμφωνα με τα κοινά τους γνωρίσματα. Παράδειγμα: Βρες τους Suppliers (S) που προσφέρουν ΌΛΑ τα Parts (P) Suppliers Parts Δεν είναι βασικός τελεστής: μπορεί να εκφραστεί και σαν Τ 1 π Α (R) T 2 π Α ((T 1 xs) R) T T 2 T 1 Διαιρετέος (nominator) P PID = p1 p2 p3 p4 Διαιρέτης (denominator) S SID s1 EPL342: Databases
22 Τελεστής Διαίρεσης (Division Operator) R=SUPPLIERS_PARTS, S=PARTS 1. Τ 1 π Α (R): Βρες τους μοναδικούς Suppliers 2. T 2 π Α ((T 1 xs) R) Βρες όλους τους συνδυασμούς των μοναδικών Suppliers με τα parts της επερώτησης (όλα τα parts) Αφαίρεσε τους συνδυασμούς που υπάρχουν ώστε να παραμείνουν οι ανεπιθύμητοι συνδυασμοί Επέστρεψε λίστα με SID - = 3. T T 1 T 2 Αφαίρεσε από την αρχική λίστα τους ανεπιθύμητους EPL342: Databases
23 Παράδειγμα Διαίρεσης (από Σχεσ. Αλγ.) Suppliers(sid, sname, address) Parts(pid, pname, color) Catalog(sid, pid, cost) : SELECT sid FROM catalog EXCEPT (π Α (R) x S) R ) Q2 SELECT sid FROM ( SELECT DISTINCT sid, Q1.pid FROM catalog, π Α (R) EXCEPT (SELECT pid FROM parts S WHERE pid IN ('p2', 'p4')) Q1 π Α (R) π Α ((π Α (R) x S) R) SELECT sid, pid FROM catalog R ((π Α (R) x S) R S= π Α (R) π Α ((π Α (R) x S) R) EPL342: Databases
24 Διάφορα Θέματα Συνάρτηση CASE Συνάρτηση/Τελεστής CASE: επιτρέπει την δημιουργία καινούριων γνωρισμάτων εφαρμόζοντας συγκρίσεις σε υπάρχων γνωρίσματα ή μεταβλητές Παράδειγμα PERSON (P) SELECT PID, PNAME, CASE 1 2 Andreas Kostas M M 3 Maria F WHEN GENDER IS NULL THEN 'N/A' 4 Eleni F WHEN GENDER= F THEN Female' 5 Nikos NULL WHEN GENDER= M THEN Male PERSON (P) ELSE Error END AS GENDER (or AS <όνομα>) 1 2 Andreas Kostas Male Male FROM PERSON PID PNAME GENDER PID PNAME GENDER 3 Maria Female 4 Eleni Female 5 Nikos N/A EPL342: Databases
25 Διάφορα Θέματα COUNT(DISTINCT *) Με τις εμφωλευμένες ερωτήσεις μπορούμε να εκφράσουμε το COUNT(DISTINCT *) το οποίο δεν υποστηρίζεται Παράδειγμα SELECT COUNT(*) FROM ( SELECT DISTINCT * FROM ) Q Το DISTINCT * χρειάζεται μόνο εάν ο πίνακας ΔΕΝ έχει Primary Key. Εάν έχει PRIMARY key ο πίνακας τότε εξυπακούεται, δηλ., είναι ισοδύναμο με SELECT COUNT(*) FROM table. EPL342: Databases
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
Διάλεξη 10: Σχεσιακή Άλγεβρα και Σχεσιακός Λογισμός (Relational Algebra/Calculus) ΙI
Διάλεξη 10: Σχεσιακή Άλγεβρα και Σχεσιακός Λογισμός (Relational Algebra/Calculus) ΙI Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Εισαγωγή στις έννοιες: Σχεσιακή Άλγεβρα Τελεστές Συνένωσης
ΗΥ-360 Αρχεία και Βάσεις Δεδομένων Διδάσκων: Δ. Πλεξουσάκης. Φροντιστήριο SQL Examples Ξένου Ρουμπίνη
ΗΥ-360 Αρχεία και Βάσεις Δεδομένων Διδάσκων: Δ. Πλεξουσάκης Φροντιστήριο SQL Examples Ξένου Ρουμπίνη 1 SQL-DDL Data Definition/Description Language (DDL): προσδιορίζουν τη δομή ή το σχήμα των δεδομένων.
Διάλεξη 13: Γλώσσα Επεξεργασίας Δεδομένων/ Data Manipulation Language (SQL DML) I. Διδάσκων: Παναγιώτης Ανδρέου
Διάλεξη 13: Γλώσσα Επεξεργασίας Δεδομένων/ Data Manipulation Language (SQL DML) I Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Εισαγωγή στις έννοιες: Εισαγωγή στην SQL DML SELECT, FROM, WHERE,
ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. ΕΠΛ342: Βάσεις Δεδομένων. Χειμερινό Εξάμηνο Φροντιστήριο 10 ΛΥΣΕΙΣ. Επερωτήσεις SQL
ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ342: Βάσεις Δεδομένων Χειμερινό Εξάμηνο 2013 Φροντιστήριο 10 ΛΥΣΕΙΣ Επερωτήσεις SQL Άσκηση 1 Για το ακόλουθο σχήμα Suppliers(sid, sname, address) Parts(pid, pname,
Βάσεις δεδομένων. (7 ο μάθημα) Ηρακλής Βαρλάμης
Βάσεις δεδομένων (7 ο μάθημα) Ηρακλής Βαρλάμης varlamis@hua.gr Περιεχόμενα SQL Βασικές πράξεις Πράξεις συνόλων Συνενώσεις Συναθροιστικές συναρτήσεις Ομαδοποιήσεις 10/4/2014 Βάσεις Δεδομένων 2 Η γλώσσα
Βάσεις δεδομένων. (8 ο μάθημα) Ηρακλής Βαρλάμης
Βάσεις δεδομένων (8 ο μάθημα) Ηρακλής Βαρλάμης varlamis@hua.gr Περιεχόμενα SQL (συνέχεια) Φωλιασμένες υπο-ερωτήσεις Δημιουργία όψεων Πράξεις ενημέρωσης και περιορισμοί 1/5/2014 Βάσεις Δεδομένων 2 Από το
ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ 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 Μια γλώσσα σχεσιακής βάσης
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
Βάσεις Δεδομένων Σύνθετα SQL queries. Ψευδώνυμα (Aliases) (2) Ψευδώνυμα (Aliases) (1) Ασάφεια και Πλήρη Ονόματα. Ερώτημα χωρίς τον όρο WHERE (1)
Ασάφεια και Πλήρη Ονόματα Βάσεις Δεδομένων Σύνθετα SQL queries Παύλος Εφραιμίδης Βάσεις Δεδομένων SQL - Μέρος Δεύτερο 1 Ονόματα Πεδίων: Στην SQL, τα ονόματα των πεδίων (γνωρισμάτων) σε κάθε σχέση είναι
Βάσεις Δεδομένων Σύνθετα SQL queries
Βάσεις Δεδομένων Σύνθετα SQL queries Παύλος Εφραιμίδης Βάσεις Δεδομένων SQL - Μέρος Δεύτερο 1 Ασάφεια και Πλήρη Ονόματα Ονόματα Πεδίων: Στην SQL, τα ονόματα των πεδίων (γνωρισμάτων) σε κάθε σχέση είναι
Διάλεξη 16: SQL DML IV, SQL DCL, SQL TCL. Διδάσκων: Παναγιώτης Ανδρέου
Διάλεξη 16: SQL DML IV, SQL DCL, SQL TCL Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Εισαγωγή στις έννοιες: Ενημέρωση Βάσης Δεδομένων (INSERT, UPDATE, DELETE) SQL DCL (GRANT, DENY, REVOKE)
Διδάσκων: Παναγιώτης Ανδρέου
Διάλεξη 09: Σχεσιακή Άλγεβρα και Σχεσιακός Λογισμός (Relational Algebra/Calculus) Ι Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Εισαγωγή στις έννοιες: Σχεσιακή Πληρότητα Σχεσιακή Άλγεβρα
Βάσεις Δεδομένων Προχωρημένα Ερωτήματα SQL
Βάσεις Δεδομένων Προχωρημένα Ερωτήματα SQL Παύλος Εφραιμίδης Βάσεις Δεδομένων SQL - Μέρος Τρίτο 1 Περιεχόμενα Προχωρημένα Ερωτήματα SQL Συνένωση Συναθροιστικές Συναρτήσεις Ομαδοποίηση Βάσεις Δεδομένων
Περιεχόμενα. Βάσεις Δεδομένων Προχωρημένα Ερωτήματα SQL. Συνένωση Σχέσεων στην SQL2 (3) Συνένωση Σχέσεων στην SQL2. (Join Relations Feature in SQL)
Περιεχόμενα Βάσεις Δεδομένων Προχωρημένα Ερωτήματα SQL Παύλος Εφραιμίδης Προχωρημένα Ερωτήματα SQL Συνένωση Συναθροιστικές Συναρτήσεις Ομαδοποίηση Βάσεις Δεδομένων SQL - Μέρος Τρίτο 1 Βάσεις Δεδομένων
Υποερωτήματα στην SQL Αθανάσιος Σταυρακούδης http://stavrakoudis.econ.uoi.gr 1 / 31 Η ανάγκη για υποερώτημα Ποιος υπάλληλος παίρνει το μεγαλύτερο μισθό; Αν ξέραμε το μεγαλύτερο μισθό, πχ 2000, θα γράφαμε:
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
ΗΥ-360 Αρχεία και Βάσεις Δεδομένων Διδάσκων: Δ. Πλεξουσάκης. Φροντιστήριο SQL Examples ΙΙ Ξένου Ρουμπίνη
ΗΥ-360 Αρχεία και Βάσεις Δεδομένων Διδάσκων: Δ. Πλεξουσάκης Φροντιστήριο SQL Examples ΙΙ Ξένου Ρουμπίνη 1 SQL(DML) - Query Example 1 Query:1 Βρείτε τα ονόματα των έργων που δεν αφορούν το τμήμα research
Βάσεις Δεδομένων ΗγλώσσαSQL (Structured Query Language)
Βάσεις Δεδομένων ΗγλώσσαSQL (Structured Query Language) Παύλος Εφραιμίδης Βάσεις Δεδομένων Η Γλώσσα SQL - Μέρος Πρώτο 1 SQL - Structured Query Language (1) Ένας από τους βασικούς λόγους της απόλυτης επικράτησης
Διάλεξη 14: Γλώσσα Επεξεργασίας Δεδομένων/ Data Manipulation Language (SQL DML) II. Διδάσκων: Παναγιώτης Ανδρέου
Διάλεξη 14: Γλώσσα Επεξεργασίας Δεδομένων/ Data Manipulation Language (SQL DML) II Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Εισαγωγή στις έννοιες: Συνενώσεις με Καρτεσιανό Γινόμενο και
Βάσεις Δεδομένων Η γλώσσα SQL (Structured Query Language) Εισαγωγή στην SQL (2) Ιστορικά Στοιχεία. SQL - Structured Query Language (1)
Βάσεις Δεδομένων Η γλώσσα SQL Structured Query Language) Παύλος Εφραιμίδης SQL - Structured Query Language 1) Ένας από τους βασικούς λόγους της απόλυτης επικράτησης των Σχεσιακών ΒΔ Εξασφαλίζει μεταφερσιμότητα
SQL Data Manipulation Language
SQL Data Manipulation Language Τελεστής union συνδυάζει subselects τα οποία παράγουν συμβατές σχέσεις γενική μορφή: subselect {union [all] subselect} περιορισμός: τα subselects δεν μπορούν να περιέχουν
Διάλεξη 07: Σχεσιακό Μοντέλο II (Relational Data Model) Διδάσκων: Παναγιώτης Ανδρέου
Διάλεξη 07: Σχεσιακό Μοντέλο II (Relational Data Model) Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Εισαγωγή στις έννοιες: Περιορισμοί Σχεσιακού Μοντέλου και Σχεσιακά Σχήματα Πράξεις Ενημερώσεων
Οι εντολές CREATE TABLE, ALTER TABLE, CREATE KEY, ALTER KEY.
Η γλώσσα ορισμού δεδομένων της SQL Οι εντολές CREATE TABLE, ALTER TABLE, CREATE KEY, ALTER KEY Αθανάσιος Σταυρακούδης http://stavrakoudis.econ.uoi.gr Άνοιξη 2014 Περιεχόμενα 1 Δημιουργία πινάκων με την
Υποερωτήματα SQL Παραδείγματα και εφαρμογές από τη βάση δεδομένων company Αθανάσιος Σταυρακούδης http://stavrakoudis.econ.uoi.gr astavrak@uoi.gr @AStavrakoudis Άνοιξη 2016 1 / 55 Περιεχόμενα 1 Απλά υποερωτήματα
Οι εντολές CREATE TABLE, ALTER TABLE, CREATE KEY, ALTER KEY.
Η γλώσσα ορισμού δεδομένων της SQL Οι εντολές CREATE TABLE, ALTER TABLE, CREATE KEY, ALTER KEY Αθανάσιος Σταυρακούδης http://stavrakoudis.econ.uoi.gr astavrak@uoi.gr @AStavrakoudis Άνοιξη 2016 1 / 85 Περιεχόμενα
( Boats)) ( Tempsids, bid. sname. Boats. Boats. Boats. (Reserves)/ > Reserves. Interlake' Sailors) ...
sname rating age Dustin 7 45.0 29 Brutus 1 33.0 Lubber 8 55.5 32 Andy 8 25.5 58 Rusty 10 35.0 64 Horatio 7 35.0 71 Zorba 10 16.0 74 Horatio 9 35.0 85 Art 3 25.5 95 Bob 3 63.5 day 101 10/10/98 102 10/10/98
Ηλεκτρονικοί Υπολογιστές II
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Ηλεκτρονικοί Υπολογιστές II Εντολές ορισμού δεδομένων (DDL) στην SQL Διδάσκων: Επίκουρος Καθηγητής Αθανάσιος Σταυρακούδης Άδειες Χρήσης Το παρόν εκπαιδευτικό
ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ Σχεσιακός Ορισµός. Μαθ. #12
ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ Σχεσιακός Ορισµός Μαθ. #12 Η κυρίως διαφορά µεταξύ «σχεσιακού λογισµού» και «σχεσιακής άλγεβρας» είναι η ακόλουθη ηλωτική vs. ιαδικαστική Τι vs. Πως Η εκφραστική δύναµη των δυο γλωσσών
Βάσεις Δεδομένων (Databases)
Βάσεις Δεδομένων (Databases) ΕΠΛ 342 Χειμερινό Εξάμηνο 2011 Διδάσκοντες Καθηγητές Γιώργος Σαμάρας (ΧΩΔ01 109) Δένδρο Επερώτησης (Query Tree) Δένδρο Επερώτησης (Query Tree) Είναι μια δενδρική δομή που αντιστοιχεί
Βάσεις Δεδομένων (Databases)
Βάσεις Δεδομένων (Databases) ΕΠΛ 342 Χειμερινό Εξάμηνο 2011 Διδάσκοντες Καθηγητές Γιώργος Σαμάρας (ΧΩΔ01 109) θεωρητικές Γλώσσες Ερωτήσεων (Formal Query Languages): Σχεσιακή Άλγεβρα Τελεστές Θεωρίας Συνόλων
Βάσεις Δεδομένων και Ευφυή Πληροφοριακά Συστήματα Επιχειρηματικότητας. 3ο Μάθημα: Εισαγωγή στην SQL. Δρ. Κωνσταντίνος Χ.
Βάσεις Δεδομένων και Ευφυή Πληροφοριακά Συστήματα Επιχειρηματικότητας 3ο Μάθημα: Εισαγωγή στην SQL Δρ. Κωνσταντίνος Χ. Γιωτόπουλος SQL Background SQL Structured Query Language Standard query γλώσσα για
Σχεδιασμός Βάσεων Δεδομένων
Πανεπιστήμιο Πειραιώς Τμήμα Ψηφιακών Συστημάτων Σχεδιασμός Βάσεων Δεδομένων Εργαστήριο 4 Δρ. Βασιλική Κούφη Περιεχόμενα Υλοποίηση Βάσεως Δεδομένων Εκτέλεση ερωτημάτων SQL στην Βάση Δεδομένων BHMA 1. Σχεδιασμός
Τμήμα Διοίκησης Επιχειρήσεων
Τμήμα Διοίκησης Επιχειρήσεων «Βάσεις Δεδομένων και Ευφυή Πληροφοριακά Συστήματα» «Σημειώσεις για την SQL» ΕΞΑΜΗΝΟ: ΣΤ Δρ. Κωνσταντίνος Χ. Γιωτόπουλος Πάτρα, Νοέμβριος 2010 SQL Create Table Η CREATE TABLE
Βάσεις Δεδομένων (Databases)
Βάσεις Δεδομένων (Databases) ΕΠΛ 342 Χειμερινό Εξάμηνο 2011 Διδάσκοντες Καθηγητές Γιώργος Σαμάρας (ΧΩΔ01 109) Σύνδεση Ισότητας (Equi-Join) Θ στην σύνδεση είναι = (=-Join) r r.ai = s.aj s =-σύνδεση του
Βάσεις Δεδομένων (Databases)
Βάσεις Δεδομένων (Databases) ΕΠΛ 342 Χειμερινό Εξάμηνο 2011 Διδάσκοντες Καθηγητές Γιώργος Σαμάρας (ΧΩΔ01 109) Δημιουργία Πεδίων Ορισμού Πεδίο Ορισμού είναι συστατικό του σχήματος για τον ορισμό των μακροεντολών
Η SQL αποτελείται από δύο υποσύνολα, τη DDL και τη DML.
Κεφάλαιο 5 Η γλώσσα SQL 5.1 Εισαγωγή Η γλώσσα SQL (Structured Query Language) είναι η πιο διαδεδομένη διαλογική γλώσσα ερωταπαντήσεων που χρησιμοποιείται για την επικοινωνία του χρήστη με σχεσιακές ΒΔ.
ΦΡΟΝΤΙΣΤΗΡΙΟ ΣΤΗ ΓΛΩΣΣΑ SQL
ΗΥ360 - ΑΡΧΕΙΑ ΚΑΙ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΦΡΟΝΤΙΣΤΗΡΙΟ ΣΤΗ ΓΛΩΣΣΑ SQL ΛΙΛΙΤΣΗΣ ΠΡΟΔΡΟΜΟΣ ΤΜΗΜΑ ΕΠΙΣΤΗΜΗΣ ΥΠΟΛΟΓΙΣΤΩΝ SQL - STRUCTURED QUERY LANGUAGE 2 Μια γλώσσα επερωτήσεων για τη διαχείριση Σχεσιακών Βάσεων
Αρχεία και Βάσεις Δεδομένων
ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Αρχεία και Βάσεις Δεδομένων Διάλεξη 10η: SQL Μέρος 3ο Δημήτρης Πλεξουσάκης Τμήμα Επιστήμης Υπολογιστών SQL Data Manipulation Language Τελεστής union συνδυάζει subselects
Η SQL ως γλώσσα ερωτημάτων. Υπενθυμίζουμε: Σχέση = Πίνακας Πλειάδα = Εγγραφή = Γραμμή (Πίνακα) Πεδίο = Γνώρισμα (Σχέσης) = Στήλη (Πίνακα)
Η SQL ως γλώσσα ερωτημάτων Υπενθυμίζουμε: Σχέση = Πίνακας Πλειάδα = Εγγραφή = Γραμμή (Πίνακα) Πεδίο = Γνώρισμα (Σχέσης) = Στήλη (Πίνακα) Η γλώσσα SQL Η SQL αποτελείται από: DDL (Data Definition Language)
ΚΕΡΑΜΟΠΟΥΛΟΣ ΕΥΚΛΕΙΔΗΣ
ΚΕΡΑΜΟΠΟΥΛΟΣ ΕΥΚΛΕΙΔΗΣ Πίνακας Πεδίο Τύπος Κύριο κλειδί Αναφορική ακεραιότητα οντοτήτων Ξένο κλειδί Αναφορική ακεραιότητα δεδομένων Δρ. Κεραμόπουλος Ευκλείδης 2 ΚΥΡΙΟ ΚΛΕΙΔΙ ΦΟΙΤΗΤΗΣ ΑΜ CHAR(5) ΟΝΟΜΑ VARCHAR(20)
ΦΡΟΝΤΙΣΤΗΡΙΟ ΣΤΗ ΓΛΩΣΣΑ SQL
ΓΙΑΝΝΗΣ ΑΓΑΘΑΓΓΕΛΟΣ ΤΜΗΜΑ ΕΠΙΣΤΗΜΗΣ ΥΠΟΛΟΓΙΣΤΩΝ ΗΥ360 - ΑΡΧΕΙΑ ΚΑΙ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΦΡΟΝΤΙΣΤΗΡΙΟ ΣΤΗ ΓΛΩΣΣΑ SQL SQL SQL - STRUCTURED QUERY LANGUAGE 2 Μια γλώσσα επερωτήσεων για τη διαχείριση Σχεσιακών
Βάσεις Δεδομένων (Databases)
Βάσεις Δεδομένων (Databases) ΕΠΛ 342 Χειμερινό Εξάμηνο 2011 Διδάσκοντες Καθηγητές Γιώργος Σαμάρας (ΧΩΔ01 109) Έλεγχος Μέλους Συνόλου (Set Membership) Οι IN και NOT IN τελεστές ελέγχουν για μονό membership
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 γλώσσα στις Σχεσιακές Βάσεις.
ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ (Relational Model) Μαθ. #10
ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ (Relational Model) Μαθ. #10 Πράξεις Αλλαγής εδοµένων INSERT (εισαγωγή) Αυτός ο τελεστής παρέχει µια λίστα από πεδία τιµών για µια καινούργια πλειάδα η οποία θα εισαχθεί σε µια σχέση R
Ιατρική Πληροφορική. Δρ. Π. ΑΣΒΕΣΤΑΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΒΙΟΪΑΤΡΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ Τ. Ε. Χρήσιμοι Σύνδεσμοι
Ιατρική Πληροφορική Δρ. Π. ΑΣΒΕΣΤΑΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΒΙΟΪΑΤΡΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ Τ. Ε. Χρήσιμοι Σύνδεσμοι Σημειώσεις μαθήματος: http://medisp.bme.teiath.gr/eclass/courses/tio103/ https://eclass.teiath.gr/courses/tio100/
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) Demetris Zeinalipour http://www.cs.ucy.ac.cy/courses/epl342
H SQL είναι η γλώσσα για όλα τα εμπορικά σχεσιακά συστήματα διαχείρισης βάσεων δεδομένων
Η γλώσσα SQL H SQL είναι η γλώσσα για όλα τα εμπορικά σχεσιακά συστήματα διαχείρισης βάσεων δεδομένων H SQL έχει διάφορα τμήματα: Γλώσσα Ορισμού Δεδομένων (ΓΟΔ) Γλώσσα Χειρισμού Δεδομένων (ΓΧΔ) Ενσωματωμένη
Ορισμοί Σχεσιακού Μοντέλου και (απλές)τροποποιήσεις Σχέσεων στην SQL. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1
Ορισμοί Σχεσιακού Μοντέλου και (απλές)τροποποιήσεις Σχέσεων στην SQL Ευαγγελία Πιτουρά 1 Τι έχουμε δει Μοντελοποίηση Εννοιολογικός Σχεδιασμός Βάσεων Δεδομένων (με χρήση του Μοντέλου Οντοτήτων/Συσχετίσεων)
Σχεδίαση Βάσεων Δεδομένων
Οδηγίες Μέρος 1: Απαντήστε κάθε ερώτηση. 1. Ποια είναι τα πλεονεκτήματα που παρέχει το Περιβάλλον Βάσεων Δεδομένων της Oracle για τις επιχειρήσεις; Το σύστημα διαχείρισης βάσεων δεδομένων της Oracle δίνει
SQL: Αιτήματα. Κεφάλαιο 5. Database Management Systems, R. Ramakrishnan and J. Gehrke
SQL: Αιτήματα Κεφάλαιο 5 Database Management Systems, R. Ramakrishnan and J. Gehrke Στιγμιότυπα Στιγμιότυπα των σχέσεων Sailors Reserves και Boats. Αν στο κλειδί της σχέσης Reserved δε συμμετείχε το γνώρισμα
Βάσεις Δεδομένων (Databases)
Βάσεις Δεδομένων (Databases) ΕΠΛ 342 Χειμερινό Εξάμηνο 2011 Διδάσκοντες Καθηγητές Γιώργος Σαμάρας (ΧΩΔ01 109) Δομημένη Γλώσσα Ερωτήσεων SQL DML Σχεσιακοί Τελεστές Τελεστές Συνόλων Ανάκτηση με NULLs Συνδέσεις-Συνενώσεις
Ορισμοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL
Εισαγωγή Μοντελοποίηση Στα προηγούμενα μαθήματα: Ορισμοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL Εννοιολογικός Σχεδιασμός Βάσεων εδομένων (με χρήση του Μοντέλου Οντοτήτων/Συσχετίσεων) Λογικός
DELETE, UPDATE, INSERT
Ενημέρωση βάσης δεδομένων με SQL DELETE, UPDATE, INSERT Αθανάσιος Σταυρακούδης http://stavrakoudis.econ.uoi.gr astavrak@uoi.gr @AStavrakoudis Άνοιξη 2016 1 / 103 Περιεχόμενα 1 Γενικά για την αποθήκευση
DISTINCT, LIKE, NULL, AND, OR, BETWEEN
Περισσότερα για τα απλά ερωτήματα SQL DISTINCT, LIKE, NULL, AND, OR, BETWEEN Αθανάσιος Σταυρακούδης http://stavrakoudis.econ.uoi.gr Άνοιξη 2014 1 / 66 Σκοπός του μαθήματος Αποκλείσετε διπλοεγγραφές από
Ακεραιότητα και Ασφάλεια Μέρος 1 Σχεδιασμός Βάσεων Δεδομένων
Ακεραιότητα και Ασφάλεια Μέρος 1 Σχεδιασμός Βάσεων Δεδομένων με βάση slides από A. Silberschatz, H. Korth, S. Sudarshan, Database System Concepts, 5 th edition Περιορισμοί πεδίου τιμών Περιορισμοί ακεραιότητας
DELETE, UPDATE, INSERT.
Ενημέρωση βάσης δεδομένων με SQL DELETE, UPDATE, INSERT Αθανάσιος Σταυρακούδης http://stavrakoudis.econ.uoi.gr Άνοιξη 2014 1 / 88 Περιεχόμενα 1 Γενικά για την αποθήκευση δεδομένων και την ενημέρωση της
ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι. Ενότητα 5: SQL (Απλή SELECT) Ευαγγελίδης Γεώργιος. Τμήμα Εφαρμοσμένης Πληροφορικής ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι
Ενότητα 5: SQL (Απλή SELECT) Ευαγγελίδης Γεώργιος Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύπου
2 ο Σύνολο Ασκήσεων. Βάσεις Δεδομένων 2013-2014 Ευαγγελία Πιτουρά 1
2 ο Σύνολο Ασκήσεων Οι βαθμοί θα ανακοινωθούν αύριο μαζί με τους βαθμούς της προγραμματιστικής άσκησης Τα αστεράκια δείχνουν τον εκτιμώμενο βαθμό δυσκολίας (*) εύκολο (**) μέτριο (***) δύσκολο Βάσεις Δεδομένων
Τμήμα Πληροφορικής ΑΠΘ 2013-2014
Βάσεις Δεδομένων Εργαστήριο V Τμήμα Πληροφορικής ΑΠΘ 2013-2014 2 Σκοπός του 5 ου εργαστηρίου Σκοπός αυτού του εργαστηρίου είναι: η μελέτη ερωτημάτων τροποποίησης δομής / δεδομένων η μελέτη σύνθετων ερωτημάτων
Ορισμοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL
Ορισμοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL Βάσεις Δεδομένων 2009-2010 Ευαγγελία Πιτουρά 1 Εισαγωγή Μοντελοποίηση Στα προηγούμενα μαθήματα: Εννοιολογικός Σχεδιασμός Βάσεων εδομένων (με
ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι. Ενότητα 7α: SQL (NULL, Διαίρεση) Ευαγγελίδης Γεώργιος. Τμήμα Εφαρμοσμένης Πληροφορικής ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι
Ενότητα 7α: SQL (NULL, Διαίρεση) Ευαγγελίδης Γεώργιος Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ ΕΡΓΑΣΤΗΡΙΟ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ ΜΕΡΟΣ ΤΡΙΤΟ Foreign key, Index, DML Ερωτήµατα Γιώργος Μαρκοµανώλης Περιεχόµενα Foreign Key... 1 Index... 4 DML Ερωτήµατα... 6 INSERT...
ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ. Επιλέγει όλες τις πλειάδες, από μια σχέση R, που ικανοποιούν τη συνθήκη επιλογής.
ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Χειμερινό Εξάμηνο 2012 SQL Structured Query Language Δρ. Βαγγελιώ Καβακλή ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ, ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ 1 Πράξεις της σχεσιακής άλγεβρας ΠΡΑΞΗ ΣΚΟΠΟΣ
Ιατρική Πληροφορική. Δρ. Π. ΑΣΒΕΣΤΑΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΒΙΟΪΑΤΡΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ Τ.Ε.
Ιατρική Πληροφορική Δρ. Π. ΑΣΒΕΣΤΑΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΒΙΟΪΑΤΡΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ Τ.Ε. Χρήσιμοι Σύνδεσμοι Σημειώσεις μαθήματος: http://medisp.bme.teiath.gr/eclass/courses/tio103/ https://eclass.teiath.gr/courses/tio100/
Εισαγωγή στις Βάσεις Δεδομζνων II
ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΣΙΑ ΠΑΝΕΠΙΣΗΜΙΟ ΚΡΗΣΗ Εισαγωγή στις Βάσεις Δεδομζνων II Ενότητα: Η γλώσσα SQL Διδάσκων: Πηγουνάκης Κωστής ΤΜΗΜΑ ΟΙΚΟΝΟΜΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΣΧΟΛΗ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ Άδειες Χρήσης Το παρόν εκπαιδευτικό
Department of Computer Science University of Cyprus. EPL342 Databases. Lecture 8: RM II. Relational Model. (Chapter )
Department of Computer Science University of Cyprus EPL342 Databases Lecture 8: RM II Relational Model (Chapter 5.2-5.3) ιδάσκων: Παναγιώτης Ανδρέου http://www.cs.ucy.ac.cy/courses/epl342 8-1 Περιεχόμενο
ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι
ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι Β. Μεγαλοοικονόμου, Δ. Χριστοδουλάκης Σχεσιακό Μοντέλο SQLΜέρος Α Ακ.Έτος 2008-09 (μεβάσητιςσημειώσειςτωνsilberchatz, Korth και Sudarshan και του C. Faloutsos
ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι Ενότητα 3:
Ενότητα 3: Σχεσιακό Μοντέλο. Από το ιδεατό στο λογικό (σχεσιακό) μοντέλο. Από το λογικό στο φυσικό (SQL) μοντέλο Ευαγγελίδης Γεώργιος Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης
Ηλεκτρονικοί Υπολογιστές II
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Ηλεκτρονικοί Υπολογιστές II Ενημέρωση βάσης δεδομένων με τις εντολές INSERT, DELETE, UPDATE Διδάσκων: Επίκουρος Καθηγητής Αθανάσιος Σταυρακούδης Άδειες
SQL. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1
SQL Βάσεις Δεδομένων 2013-2014 Ευαγγελία Πιτουρά 1 Τι είδαμε μέχρι τώρα Δύο γλώσσες ερωτήσεων που αποτελούν το θεωρητικό υπόβαθρο Σχεσιακή άλγεβρα: μια άλγεβρα συνόλων που αφορά πράξεις πάνω σε σχέσεις
Διάλεξη 12: SQL Data Definition Language. Διδάσκων: Παναγιώτης Ανδρέου
Διάλεξη 12: SQL Data Definition Language Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Εισαγωγή στις έννοιες: Επιπρόσθετοι Περιορισμοί Παραδείγματα/Ασκήσεις Διδάσκων: Παναγιώτης Ανδρέου EPL342:
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 Εισαγωγή, γενικές
Η αναλυτική περιγραφή της γλώσσας SQL αποτελεί αντικείµενο των σελίδων που ακολουθούν. Η ΓΛΩΣΣΑ ΟΡΙΣΜΟΥ Ε ΟΜΕΝΩΝ
Κεφάλαιο 6 SQL Στο κεφάλαιο αυτό παρουσιάζεται η δοµηµένη γλώσσα ερωτοαποκρίσεων (Structured Query Language, SQL) που χρησιµοποιείται για τη διαχείριση των δεδοµένων της βάσης. Η διαχείριση αυτή περιλαµβάνει
Τμήμα Πληροφορικής ΑΠΘ
Βάσεις Δεδομένων Εργαστήριο ΙΙ Τμήμα Πληροφορικής ΑΠΘ 2013-2014 2 Σκοπός του 2 ου εργαστηρίου Σκοπός αυτού του εργαστηρίου είναι: Η μελέτη ερωτημάτων σε μία μόνο σχέση. Εξετάζουμε τους τελεστές επιλογής
Διάλεξη 17: Προγραμματισμός Βάσης Δεδομένων Ι. Διδάσκων: Παναγιώτης Ανδρέου
Διάλεξη 17: Προγραμματισμός Βάσης Δεδομένων Ι Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Εισαγωγή στις έννοιες: Όψεις (Views) σε TSQL Αποθηκευμένες Διαδικασίες (Stored Procedures) σε TSQL
ΕΠΛ 342 Βάσεις εδοµένων
ΕΠΛ 342 Βάσεις εδοµένων Εργαστήριο 3 ο SQL - DML Ιωάννα Συρίµη syrimi@ucy.ac.cy Data Manipulation Language Εισαγωγή νέων Εγγραφών Insert Into ιαγραφή Εγγραφών Delete Αλλαγή υφιστάµενων Εγγραφών Update
Σχεδίαση και λειτουργία βάσης δεδομένων Το παράδειγμα της μαιευτικής κλινικής Ευάγγελος Καρβούνης
Σχεδίαση και λειτουργία βάσης δεδομένων Το παράδειγμα της μαιευτικής κλινικής Ευάγγελος Καρβούνης Περιεχόμενα 1 Γενική περιγραφή του προβλήματος 2 Μοντελοποίηση Ο/Σ 3 Σχεσιακό μοντέλο, SQL 4 Ερωτήματα
Σύνολα Ασκήσεων. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1
Σύνολα Ασκήσεων Βάσεις Δεδομένων 2018-2019 Ευαγγελία Πιτουρά 1 2 ο Σύνολο Ασκήσεων Άσκηση 3 Οι λύσεις είναι ενδεικτικές υπάρχουν και άλλες σωστές SQL ερωτήσεις για τα ερωτήματα της άσκησης. 2 (γ)(i) Τους
SQL. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1
SQL 1 Τι είδαμε μέχρι τώρα Δύο γλώσσες ερωτήσεων που αποτελούν το θεωρητικό υπόβαθρο Σχεσιακή άλγεβρα: μια άλγεβρα συνόλων που αφορά πράξεις πάνω σε σχέσεις Σχεσιακό λογισμό (πλειάδων): δηλωτικό τρόπο
Ενεργές ΒΔ. Παύλος Εφραιμίδης pefraimi <at> ee.duth.gr. Βάσεις Δεδομένων Ενεργές ΒΔ 1
Ενεργές ΒΔ Παύλος Εφραιμίδης pefraimi ee.duth.gr Βάσεις Δεδομένων Ενεργές ΒΔ 1 Active Databases Υποστηρίζουν την αυτόματη εκτέλεση ενεργειών όταν συμβούν συγκεκριμένα γεγονότα Ένας διαδεδομένος μηχανισμός
Βάσεις Δεδομένων (Ε) Εισαγωγή στην υλοποίηση σχεσιακών βάσεων δεδομένων
Βάσεις Δεδομένων (Ε) Εισαγωγή στην υλοποίηση σχεσιακών βάσεων δεδομένων Εισαγωγή στη χρήση της γλώσσας SQL και στον προγραμματισμό εφαρμογών βάσεων δεδομένων Θα χρησιμοποιήσουμε το Σχεσιακό Σύστημα (προϊόν)
Βάσεις Δεδομένων (Databases)
Βάσεις Δεδομένων (Databases) ΕΠΛ 342 Χειμερινό Εξάμηνο 2011 Λογισμός πεδίου τιμών (domain calculus) Διδάσκοντες Καθηγητές Γιώργος Σαμάρας (ΧΩΔ01 109) Σχεσιακό Μοντέλο Ο λογισμός πεδίου τιμών διαφέρει από
ΕΣΔ 232: ΟΡΓΑΝΩΣΗ ΔΕΔΟΜΕΝΩΝ ΣΤΗΝ ΚΟΙΝΩΝΙΑ ΤΗΣ ΠΛΗΡΟΦΟΡΙΑΣ. Ακαδημαϊκό Έτος , Εαρινό Εξάμηνο Διδάσκων Καθ.: Νίκος Τσαπατσούλης
ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ, ΤΜΗΜΑ ΕΠΙΚΟΙΝΩΝΙΑΣ & ΣΠΟΥΔΩΝ ΔΙΑΔΙΚΤΥΟΥ ΕΣΔ 232: ΟΡΓΑΝΩΣΗ ΔΕΔΟΜΕΝΩΝ ΣΤΗΝ ΚΟΙΝΩΝΙΑ ΤΗΣ ΠΛΗΡΟΦΟΡΙΑΣ Ακαδημαϊκό Έτος 2011 2012, Εαρινό Εξάμηνο Καθ.: Νίκος Τσαπατσούλης ΥΠΟΔΕΙΓΜΑ
Ορισµοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL
Ορισµοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL Βάσεις εδοµένων 2011-2012 Ευαγγελία Πιτουρά 1 Εισαγωγή Μοντελοποίηση Στα προηγούµενα µαθήµατα: Εννοιολογικός Σχεδιασµός Βάσεων Δεδοµένων (µε
Ιατρική Πληροφορική. Δρ. Π. ΑΣΒΕΣΤΑΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΒΙΟΪΑΤΡΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ Τ.Ε.
Ιατρική Πληροφορική Δρ. Π. ΑΣΒΕΣΤΑΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΒΙΟΪΑΤΡΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ Τ.Ε. Χρήσιμοι Σύνδεσμοι Σημειώσεις μαθήματος: http://medisp.bme.teiath.gr/eclass/courses/tio103/ https://eclass.teiath.gr/courses/tio100/
Βάσεις Δεδομένων (Databases)
Βάσεις Δεδομένων (Databases) ΕΠΛ 342 Χειμερινό Εξάμηνο 2011 Διδάσκοντες Καθηγητές Γιώργος Σαμάρας (ΧΩΔ01 109) Περιεχόμενο Διάλεξης Κεφάλαιο 5: Το Σχεσιακό Μοντέλο Δεδομένων Περιορισμοί Σχεσιακού Μοντέλου
Πανεπιστήµιο Ιωαννίνων Τµήµα Μαθηµατικών Μάθηµα: Βάσεις εδοµένων (741) Εργαστηριακό Τεστ Οµάδα: Α 18/11/2004
Πανεπιστήµιο Ιωαννίνων Τµήµα Μαθηµατικών Μάθηµα: Βάσεις εδοµένων (741) Εργαστηριακό Τεστ Οµάδα: Α 18/11/2004 Θέλουµε να φτιάξουµε µια βάση στην οποία θα καταχωρούνται οι φοιτητές του τµήµατος Μαθηµατικών,
Ηλεκτρονικοί Υπολογιστές II
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Ηλεκτρονικοί Υπολογιστές II SQL Ερωτήματα ομαδοποίησης και συνάθροισης Διδάσκων: Επίκουρος Καθηγητής Αθανάσιος Σταυρακούδης Άδειες Χρήσης Το παρόν εκπαιδευτικό
ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι
ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι Β. Μεγαλοοικονόμου, Δ. Χριστοδουλάκης Σχεσιακό Μοντέλο SQL- Μέρος Β Ακ.Έτος 2008-09 (μεβάσητιςσημειώσειςτωνsilberchatz, Korth και Sudarshan και του C. Faloutsos
SQL Data Manipulation Language
Εμφωλευμένες επερωτήσεις (Nested Queries) Μια εντολή select μπορεί να περιέχει μια άλλη εντολή select αλλά υπό περιορισμούς Μια εντολή select που εμφανίζεται μέσα σε μια άλλη εντολή select ονομάζεται subselect.
ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι. Ενότητα 9β: SQL (Διαχείριση εγγραφών, Όψεις, Περιορισμοί, Εναύσματα) Ευαγγελίδης Γεώργιος. Τμήμα Εφαρμοσμένης Πληροφορικής
Ενότητα 9β: SQL (Διαχείριση εγγραφών, Όψεις, Περιορισμοί, Εναύσματα) Ευαγγελίδης Γεώργιος Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό,
ΤΑΞΙΝΟΜΗΣΗ ΑΠΟΤΕΛΕΣΜΑΤΩΝ ΕΡΩΤΗΜΑΤΟΣ
ΤΑΞΙΝΟΜΗΣΗ ΑΠΟΤΕΛΕΣΜΑΤΩΝ ΕΡΩΤΗΜΑΤΟΣ Η συνθήκη WHERE βάζει περιορισμούς στις εγγραφές που επιστρέφονται. Ο όρος ORDER BY ταξινομεί τις εγγραφές που επιστρέφονται. Παράδειγμα: SELECT * FROM table_name ORDER
-----------------------------------------------------------------------------------------------------
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ BΑΣΕΙΣ Ε ΟΜΕΝΩΝ ΕΞΕΤΑΣΗ ΜΑΡΤΙΟΥ 2006 - ΛΥΣΕΙΣ Ι. Βασιλείου -----------------------------------------------------------------------------------------------------
ΗΓλώσσαSQL. Εισαγωγή Βασικές Έννοιες Τύποι Δεδομένων Ορισμός Δεδομένων Χειρισμός Δεδομένων
ΗΓλώσσαSQL Εισαγωγή Βασικές Έννοιες Τύποι Δεδομένων Ορισμός Δεδομένων Χειρισμός Δεδομένων Εισαγωγή Η δομημένη γλώσσα ερωτημάτων SQL (Structured Query Language) χρησιμοποιείται για τους χρήστες του ΣΔΒΔ
Διάλεξη 06: Σχεσιακό Μοντέλο I (Relational Data Model) Διδάσκων: Παναγιώτης Ανδρέου
Διάλεξη 06: Σχεσιακό Μοντέλο I (Relational Data Model) Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Εισαγωγή στις έννοιες: Εισαγωγή στο Σχεσιακό Μοντέλο Ορισμοί Σχεσιακού Μοντέλου Σχεσιακοί
Εισαγωγή στην πληροφορική
Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Εισαγωγή στην πληροφορική Ενότητα 6: Εισαγωγή στις βάσεις δεδομένων (Μέρος Β) Αγγελίδης Παντελής Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Άδειες Χρήσης
Η Γλώσσα SQL. Μέρος α. Η Γλώσσα SQL Σελίδα 1
Η Γλώσσα SQL Μέρος α Η Γλώσσα SQL Σελίδα 1 SQL - ΕΙΣΑΓΩΓΗ SQL (Structured Query Language) είναι η τυποποιηµένη standard γλώσσα στις Σχεσιακές Βάσεις. Η πρώτη χρήση ήταν στο πρότυπο σύστηµα της IBM, που
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:
Ηλεκτρονικοί Υπολογιστές II
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Ηλεκτρονικοί Υπολογιστές II Ερωτήματα επιλογής SQL, σύζευξη, διάζευξη, NULL, ταίριασμα κειμένου Διδάσκων: Επίκουρος Καθηγητής Αθανάσιος Σταυρακούδης Άδειες