Βάσεις Δεδομένων Ι SQL Μέρος 2 ο. Φώτης Κόκκορας (MSc/PhD) Τμήμα Μηχανικών Πληροφορικής ΤΕ

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

Download "Βάσεις Δεδομένων Ι SQL Μέρος 2 ο. Φώτης Κόκκορας (MSc/PhD) Τμήμα Μηχανικών Πληροφορικής ΤΕ"

Transcript

1 Βάσεις Δεδομένων Ι - 04 SQL Μέρος 2 ο Φώτης Κόκκορας (MSc/PhD) Τμήμα Μηχανικών Πληροφορικής ΤΕ ΤΕΙ Θεσσαλίας

2 Ερωτήματα Πολλαπλών Σχέσεων (multi-relation queries) Θα διαπιστώσετε στην πορεία ότι τα περισσότερο ενδιαφέροντα ερωτήματα είναι αυτά που εμπλέκουν πολλές σχέσεις (πίνακες). Η εμπλοκή πολλών πινάκων σε ένα ερώτημα γίνεται παραθέτοντας τα ονόματά τους στο FROM τμήμα του ερωτήματος. Παράδειγμα: έστω οι σχέσεις: Likes(drinker, beer) και Frequents(drinker, bar) και το ερώτημα: "ποιες μπύρες αρέσουν στα άτομα που συχνάζουν στο bar A.P. Stump's"; SELECT beer FROM Frequents, Likes WHERE bar = 'A.P. Stump\'s' AND Frequents.drinker = Likes.drinker; υπενθυμίζεται ότι τα εσωτερικά μονά quotes σε αλφαριθμητικά στον MySQL Server πρέπει να μπαίνουν escaped, δηλαδή να προηγείται ο χαρακτήρας \ Προσέξτε ότι ξεχωρίζουμε τα γνωρίσματα με ίδιο όνομα (στο παράδειγμα, το drinker) βάζοντας μπροστά το όνομα της σχέσης (του πίνακα), π.χ. Likes.drinker Πώς ακριβώς υπολογίζεται η απάντηση στο παραπάνω ερώτημα; Φ. Κόκκορας / Τμ. Μηχανικών Πληροφορικής ΤΕ / ΤΕΙ Θεσσαλίας Βάσεις Δεδομένων Ι

3 Γινόμενο Σχέσεων (περισσότερα όταν μιλήσουμε για Σχεσιακή Άλγεβρα) Πρώτα θα δούμε την έννοια του γινομένου (product) σχέσεων. Έστω οι σχέσεις R1 και R2. Το γινόμενο των R1 και R2 είναι μια σχέση R3 = R1xR2 με: πλειάδες που προκύπτουν αν συνδυάσουμε κάθε πλειάδα της σχέσης R1 με κάθε πλειάδα της σχέσης R2 σχήμα (schema) που προκύπτει από την συνένωση των επιμέρους σχημάτων των R1 και R2, με αυτή όμως τη σειρά Σημείωση: αν υπάρχουν γνωρίσματα με ίδιο όνομα, βάζουμε μπροστά το όνομα της σχέσης. Παράδειγμα: Φ. Κόκκορας / Τμ. Μηχανικών Πληροφορικής ΤΕ / ΤΕΙ Θεσσαλίας Βάσεις Δεδομένων Ι

4 Ερωτήματα Πολλαπλών Σχέσεων (συνέχεια) SELECT beer FROM Frequents, Likes WHERE bar = 'A.P. Stump\'s' AND Frequents.drinker = Likes.drinker; Φανταστείτε 2 πλειάδες-μεταβλητές t1 και t2 (μία για κάθε σχέση). Αυτές επισκέπτονται κάθε συνδυασμό που προκύπτει παίρνοντας μια πλειάδα από κάθε σχέση. Αν οι t1 και t2 δείχνουν σε πλειάδες που ικανοποιούν τους περιορισμούς που θέτει το WHERE τμήμα του ερωτήματος, τότε από αυτές τις πλειάδες παίρνουμε την πληροφορία που ορίζει το SELECT τμήμα του ερωτήματος. Φ. Κόκκορας / Τμ. Μηχανικών Πληροφορικής ΤΕ / ΤΕΙ Θεσσαλίας Βάσεις Δεδομένων Ι

5 Ρητή Χρήση Μεταβλητών Μερικές φορές κάποιο ερώτημα πρέπει να χρησιμοποιήσει δύο φορές την ίδια σχέση! πρέπει κάπως να ξεχωρίζει σε ποια σχέση από τις δύο ανήκουν τα διάφορα πεδία Δουλεύουμε ως εξής: στα ονόματα των σχέσεων στο FROM τμήμα, ορίζουμε μεταβλητές για κάθε σχέση πρακτικά, αλλάζουμε όνομα στις σχέσεις!!! στα ονόματα των πεδίων στο SELECT τμήμα χρησιμοποιούμε αυτές τις μεταβλητές Παράδειγμα: Στη σχέση Beers(name, manf), θέλουμε να βρούμε όλα τα ζευγάρια μπύρας του ίδιου κατασκευαστή, χωρίς όμως: να παράγονται ζευγάρια ίδιας μπύρας όπως (Budweiser, Budweiser) και επιπλέον, η πρώτη μπύρα στο ζευγάρι να προηγείται αλφαβητικά της δεύτερης π.χ. δεκτό το (Budweiser, Creamy Dark) αλλά όχι το (Creamy Dark, Budweiser) SELECT b1.name, b2.name FROM Beers b1, Beers b2 WHERE b1.manf = b2.manf AND b1.name < b2.name; Σημείωση: η ανισότητα με αλφαριθμητικά πρακτικά ελέγχει αν το b1.name προηγείται αλφαβητικά έναντι του b2.name. Φ. Κόκκορας / Τμ. Μηχανικών Πληροφορικής ΤΕ / ΤΕΙ Θεσσαλίας Βάσεις Δεδομένων Ι

6 Υποερωτήματα (Subqueries) Ένα ερώτημα SELECT-FROM-WHERE μπορεί να χρησιμοποιηθεί (μέσα σε παρενθέσεις) ως τιμή σε μια σειρά θέσεων (όπως στο FROM και το WHERE) μέσα σε άλλο ερώτημα. Δηλαδή, αντί να βάλουμε μια σχέση μετά από μια δήλωση FROM, μπορούμε να βάλουμε ένα υποερώτημα (σε παρενθέσεις) και πρακτικά να κάνουμε την ερώτηση πάνω στα αποτελέσματα του υποερωτήματος! Αυτό είναι και τεχνικά αποδεκτό καθώς το αποτέλεσμα ενός SELECT ερωτήματος είναι το ίδιο μια σχέση! Παράδειγμα: "Βρες τις μπύρες που αρέσουν στα άτομα που συχνάζουν στο bar Caravan". SELECT beer FROM Likes, ( SELECT drinker FROM Frequents WHERE bar = 'Caravan') CaravanDrinker WHERE Likes.drinker = CaravanDrinker.drinker; Σημείωση: Χρειάστηκε να ορίσουμε πλειάδα-μεταβλητή (CaravanDrinker) για να αναφερθούμε στα αποτελέσματα του υποερωτήματος. Άρα το υποερώτημα (σε κίτρινο φόντο παραπάνω) "μαζεύει" τους πελάτες που συχνάζουν στο bar Caravan. Φ. Κόκκορας / Τμ. Μηχανικών Πληροφορικής ΤΕ / ΤΕΙ Θεσσαλίας Βάσεις Δεδομένων Ι

7 Υποερωτήματα που επιστρέφουν μια τιμή! Αν ένα υποερώτημα εγγυημένα επιστρέφει μία μόνο πλειάδα μιας στήλης, τότε αυτό το υποερώτημα μπορεί να χρησιμοποιηθεί ως τιμή (value) σε κάποια σχετική θέση μέσα σε άλλο ερώτημα. Αν το υποερώτημα δεν επιστρέψει ακριβώς μία πλειάδα μιας στήλης, προκύπτει σφάλμα (run-time-error). Παράδειγμα: Μέσω της σχέσης Sells(bar, beer, price), βρες τα bar που πουλάνε τη μπύρα Hefeweizen στην ίδια τιμή που το bar Blue Tattoo χρεώνει την Killian's. Τα παρακάτω δύο ερωτήματα σίγουρα δουλεύουν: Βρες πόσο χρεώνει το Blue Tattoo για την μπύρα Killian's. SELECT price FROM Sells WHERE bar='blue Tattoo' AND beer='killian\'s'; Βρες τα bar που χρεώνουν το ίδιο ποσό για την μπύρα Hefeweizen. SELECT bar FROM Sells WHERE beer='hefeweizen' AND price=6; Συνδυασμός σε μια ερώτηση με χρήση υποερωτήματος: SELECT bar FROM Sells WHERE beer='hefeweizen' AND price = ( SELECT price FROM Sells Η εξίσωση price = (υποερώτημα) είναι αποδεκτή γιατί το υποερώτημα επιστρέφει ΜΙΑ ΜΟΝΟ τιμή (στο παράδειγμα, το 6). WHERE bar='blue Tattoo' AND beer='killian\'s' ); Φ. Κόκκορας / Τμ. Μηχανικών Πληροφορικής ΤΕ / ΤΕΙ Θεσσαλίας Βάσεις Δεδομένων Ι

8 Ο Τελεστής ΙΝ (ξανά!) Με τον τελεστή ΙΝ έχουμε πει ότι μπορούμε να ορίσουμε εύκολα μια συνθήκη για τις τιμές που θέλουμε/επιτρέπουμε να πάρει ένα πεδίο: SELECT name, city FROM Bars WHERE city IN ('Chicago', 'New York'); στα αποτελέσματα, το city θα είναι είτε Chicago ή New York Στην πραγματικότητα το ('Chicago', 'New York') είναι μια σχέση με δύο πλειάδες! ΑΡΑ αυτό που ακολουθεί το IN (ή το NOT IN) είναι μια σχέση (πίνακας!). ΑΡΑ μπορούμε στη θέση του ('Chicago', 'New York') να βάλουμε ακόμη και ένα υποερώτημα! (που ως γνωστό επιστρέφει πίνακα!) Παράδειγμα: Βρες την μπύρα και τον κατασκευαστή της για όσες μπύρες αρέσουν στον John. SELECT * FROM Beers WHERE name IN ( SELECT beer FROM Likes WHERE drinker = 'John' ); Οι μπύρες που αρέσουν στον John. Φ. Κόκκορας / Τμ. Μηχανικών Πληροφορικής ΤΕ / ΤΕΙ Θεσσαλίας Βάσεις Δεδομένων Ι

9 Ο τελεστής EXISTS (υπάρχει) Σημείωση: τα υποερωτήματα επιστρέφουν πλειάδες με μια μόνο στήλη. Η εντολή EXISTS(<υποερώτημα>) επιστρέφει TRUE αν και μόνο αν το υποερώτημα επιστρέφει τουλάχιστον ένα αποτέλεσμα. Με απλά λόγια: επιστρέφει TRUE αν υπάρχει (exists) αποτέλεσμα στο υποερώτημα. Μπορεί να χρησιμοποιηθεί και με NOT μπροστά (βλ. παράδειγμα), οπότε τότε επιστρέφει TRUE αν δεν υπάρχει (NOT EXISTS) αποτέλεσμα στο υποερώτημα. Παράδειγμα: Από τη σχέση Beers(name, manf), βρες τις μπύρες που είναι οι μοναδικές που φτιάχνει ο κατασκευαστής τους! Σημείωση: Για να πάρετε αποτέλεσμα από τη mybeersdb, καταχωρήστε στη σχέση Beers την ('Amstel','Αθηναϊκή'). (διαγράψτε την μετά το παράδειγμα) SELECT name FROM Beers b1 WHERE NOT EXISTS ( SELECT * FROM Beers WHERE manf = b1.manf AND name <> b1.name ); Μπύρες με τον ίδιο κατασκευαστή (manf) όπως η μπύρα b1.name αλλά διαφορετικές από αυτή! Αυτό το manf ανήκει στην σχέση που βρίσκεται στο πλησιέστερο υποερώτημα, δηλ. στο Beers του υποερωτήματος και όχι το Beers του εξωτερικού ερωτήματος! Για αποφυγή σύγχυσης στα name, ορίσαμε τη μεταβλητή b1 για τον εξωτερικό πίνακα Beers. Φ. Κόκκορας / Τμ. Μηχανικών Πληροφορικής ΤΕ / ΤΕΙ Θεσσαλίας Βάσεις Δεδομένων Ι

10 Ο τελεστής ALL Σημείωση: τα υποερωτήματα επιστρέφουν πλειάδες με μια μόνο στήλη. Η φράση x <> ALL(<subquery>) είναι αληθής (TRUE) αν και μόνο αν, για κάθε πλειάδα t της σχέσης που ορίζει το υποερώτημα, το x είναι διάφορο του t. με απλά λόγια: το x δεν βρίσκεται μέσα στα αποτελέσματα του υποερωτήματος! Δηλαδή, το <>ALL είναι ισοδύναμο με το NOT IN Αντί για <> μπορούμε να έχουμε άλλο τελεστή σύγκρισης (με ανάλογη ερμηνεία!). Παράδειγμα: x >= ALL(<subquery>) είναι TRUE αν το x είναι μεγαλύτερο ή ίσο από όλα (ALL) τα αποτελέσματα του υποερωτήματος. Παράδειγμα: Με τον πίνακα Sells(bar,beer,price), βρες τις μπύρες με την υψηλότερη τιμή! SELECT beer FROM Sells WHERE price >= ALL( SELECT price FROM Sells ); Η τιμή από την εξωτερική σχέση Sells, πρέπει να είναι μεγαλύτερη ή ίση από κάθε άλλη τιμή! Τελικά ποια είναι η ακριβότερη μπύρα στην mybeersdb; Στο bar Hedley Club η μπύρα Hefeweizen κοστίζει 8.00 $. Φ. Κόκκορας / Τμ. Μηχανικών Πληροφορικής ΤΕ / ΤΕΙ Θεσσαλίας Βάσεις Δεδομένων Ι

11 Ο τελεστής ΑΝΥ Σημείωση: τα υποερωτήματα επιστρέφουν πλειάδες με μια μόνο στήλη (πεδίο). Η φράση x = ANY(<subquery>) επιστρέφει TRUE αν και μόνο αν υπάρχει κατ'ελάχιστο μια πλειάδα στο subquery με την οποία ισούται το x. Δηλαδή, για τον τελεστή = η ερμηνεία του ANY είναι ίδια με αυτή του IN στην εκδοχή που είδαμε στο slide #8: SELECT... FROM... WHERE x = ANY (SELECT... FROM...); SELECT... FROM... WHERE x IN (SELECT... FROM...); Αντί για = μπορεί να έχουμε οποιοδήποτε τελεστή σύγκρισης! Παράδειγμα: το x >= ANY(<subquery>) σημαίνει ότι το x είναι μεγαλύτερο ή ίσο από τουλάχιστον μια εγγραφή του υποερωτήματος. Οι τελεστές ALL και ANY είναι εξειδικεύσεις του τελεστή EXISTS. Το αποτέλεσμά τους μπορεί να παραχθεί με χρήση του τελεστή EXISTS και κατάλληλη διαμόρφωση του υποερωτήματος. Φ. Κόκκορας / Τμ. Μηχανικών Πληροφορικής ΤΕ / ΤΕΙ Θεσσαλίας Βάσεις Δεδομένων Ι

12 Ένωση Τομή Διαφορά UNION INTERSECT EXCEPT H ένωση/union, η τομή/intersection και η διαφορά/difference σχέσεων εκφράζονται με τους ακόλουθους τρόπους (εννοείται με χρήση υποερωτημάτων): (<subquery>) UNION (<subquery>) (<subquery>) INTERSECT (<subquery>) (<subquery>) EXCEPT (<subquery>) Παράδειγμα με INTERSECT (δεν υποστηρίζεται σε MySQL) Μέσω των σχέσεων Likes(drinker,beer), Sells(bar,beer,price) και Frequents(drinker,bar), βρες τους πελάτες και τις μπύρες που: στον πελάτη αρέσει η μπύρα ο πελάτης συχνάζει σε τουλάχιστον ένα bar που πουλάει αυτή τη μπύρα (SELECT * FROM Likes) INTERSECT ( SELECT drinker, beer FROM Sells, Frequents WHERE Frequents.bar=Sells.bar ); Ο MySQL server υποστηρίζει μόνο την ένωση/union σχέσεων. Φ. Κόκκορας / Τμ. Μηχανικών Πληροφορικής ΤΕ / ΤΕΙ Θεσσαλίας Βάσεις Δεδομένων Ι

13 Παράδειγμα UNION σε MySQL (SELECT * FROM Likes WHERE drinker='jesse') UNION (SELECT drinker, beer FROM Sells, Frequents WHERE Frequents.bar=Sells.bar AND drinker='jesse'); Το πρώτο υποερώτημα, μόνο του, επιστρέφει: Το δεύτερο υποερώτημα, μόνο του, επιστρέφει: Συνολικά το παραπάνω ερώτημα επιστρέφει: Οι πολλαπλές απαντήσεις (πλειάδες) προφανώς απαλείφονται. Αν τις θέλουμε όλες, αντί για UNION βάζουμε UNION ALL. Προσέξτε ότι τα δύο υποερωτήματα πρέπει να επιστρέφουν σχέσεις ίδιου σχήματος (drinker,beer), διαφορετικά δεν έχει νόημα το UNION (όμοια τα INTERSECT, EXCEPT) Φ. Κόκκορας / Τμ. Μηχανικών Πληροφορικής ΤΕ / ΤΕΙ Θεσσαλίας Βάσεις Δεδομένων Ι

14 Συγκεντρωτικοί Υπολογισμοί (Aggregations) Οι ακόλουθες συναρτήσεις εφαρμόζονται σε μια στήλη στο SELECT τμήμα ερωτήματος και κάνουν τον υπολογισμό πάνω σε όλα τα αποτελέσματα του ερωτήματος: COUNT (καταμέτρηση) Πόσες μπύρες είναι καταχωρημένες στον beers; (Απάντηση: 20) SELECT COUNT(*) FROM beers; Σε πόσες διαφορετικές τιμές πωλείται η Budweiser; (Απάντηση: 7) SELECT COUNT(DISTINCT price) FROM Sells WHERE beer = 'Budweiser'; SUM (άθροισμα) Πόσο κοστίζει να πιούμε όλες τις μάρκες μπύρας που σερβίρει το bar Caravan; (Απάντηση:9) SELECT sum(price) FROM sells where bar='caravan'; AVG (μέσος όρος - average) Ποια η μέση τιμή της Budweiser; (Απάντηση: ) SELECT avg(price) FROM sells WHERE beer='budweiser'; min (ελάχιστη τιμή με μικρούς χαρακτήρες σε MySQL) Ποια η τιμή της φθηνότερης μπύρας; (Απάντηση: 2.5) SELECT min(price) FROM sells; max (μέγιστη τιμή με μικρούς χαρακτήρες σε MySQL) Ποια η τιμή της ακριβότερης μπύρας; (Απάντηση: 8) SELECT max(price) FROM sells; Φ. Κόκκορας / Τμ. Μηχανικών Πληροφορικής ΤΕ / ΤΕΙ Θεσσαλίας Βάσεις Δεδομένων Ι

15 Ερμηνεία Συγκεντρωτικού Υπολογισμού με ΜΙΑ μόνο στήλη στο SELECT Έστω το ερώτημα: Ποια η μέση τιμή της Budweiser; SELECT avg(price) FROM sells WHERE beer='budweiser'; Σκεφτείτε το ίδιο ερώτημα χωρίς το συγκεντρωτικό υπολογισμό: SELECT price FROM sells WHERE beer='budweiser'; Τα αποτελέσματα φαίνονται στην αριστερή εικόνα. Όταν όμως γίνεται χρήση της συνάρτησης avg, τότε πάνω σε αυτά τα αποτελέσματα εκτελείται μέσος όρος και επιστρέφεται αυτό ως αποτέλεσμα (δεξιά εικόνα). Στην περίπτωση που στο SELECT υπάρχουν περισσότερες στήλες, τα πράγματα είναι πιο πολύπλοκα και απαιτείται η χρήση του τελεστή ομαδοποίησης GROUP BY. Θα το δούμε αναλυτικά παρακάτω. Φ. Κόκκορας / Τμ. Μηχανικών Πληροφορικής ΤΕ / ΤΕΙ Θεσσαλίας Βάσεις Δεδομένων Ι

16 Συγκεντρωτικές Πράξεις και NULL Οι τιμές NULL αγνοούνται στους συγκεντρωτικούς υπολογισμούς COUNT, SUM και AVG, ενώ δεν μπορεί να είναι το min ή το max μιας στήλης! Αν όμως σε μια στήλη υπάρχουν μόνο NULL τιμές (ή δεν υπάρχουν καθόλου τιμές!) τότε το αποτέλεσμα ενός συγκεντρωτικού υπολογισμού είναι NULL, εκτός της καταμέτρησης (COUNT) που όπως είναι λογικό θα επιστρέψει μηδέν (0). Παραδείγματα: Ποια η μεγαλύτερη τιμή πώλησης της μπύρας foo; SELECT max(price) FROM sells WHERE beer='foo'; Απάντηση: null - δεν υπάρχει μπύρα foo! Πόσα bar πουλάνε την μπύρα foo; SELECT count(*) FROM sells WHERE beer='foo'; Απάντηση: 0 - κανένα μπαρ δεν πουλάει τη μπύρα foo Φ. Κόκκορας / Τμ. Μηχανικών Πληροφορικής ΤΕ / ΤΕΙ Θεσσαλίας Βάσεις Δεδομένων Ι

17 Ομαδοποίηση (Grouping) Είδαμε πιο πριν συγκεντρωτικές πράξεις σε ερώτημα με μία στήλη στο SELECT. Όταν υπάρχουν περισσότερες στήλες, όσες είναι αριστερά της στήλης του συγκεντρωτικού υπολογισμού πρέπει να ομαδοποιηθούν. Για τη μέση τιμή πώλησης της μπύρας Budweiser είχαμε γράψει: SELECT avg(price) FROM sells WHERE beer='budweiser'; Τι γίνεται αν θέλουμε τη μέση τιμή πώλησης κάθε μπύρας; Πώς θα προκύψει δηλαδή το αποτέλεσμα που απεικονίζεται δεξιά; Βήμα 1: γράφουμε το ερώτημα που φέρνει τα δεδομένα (εδώ τις μπύρες και τις τιμές τους από τον πίνακα Sells) SELECT beer, price FROM sells Βήμα 2: Βάζουμε συγκεντρωτικό υπολογισμό στη ζητούμενη στήλη και ομαδοποιούμε στις στήλες αριστερά της: SELECT beer, AVG(price) FROM Sells GROUP BY beer; Τα παραπάνω βήματα έχουν ευρύτερη εφαρμογή: Να βρείτε τη μέση τιμή μπύρας ανά πόλη Φ. Κόκκορας / Τμ. Μηχανικών Πληροφορικής ΤΕ / ΤΕΙ Θεσσαλίας Βάσεις Δεδομένων Ι

18 Ερμηνεία Συγκεντρωτικού Υπολογισμού με ΠΟΛΛΕΣ στήλες στο SELECT SELECT beer, AVG(price) FROM Sells GROUP BY beer; Οι πλειάδες-αποτέλεσμα του ερωτήματος SELECT...FROM...WHERE, ομαδοποιούνται με βάση την τιμή των πεδίων ομαδοποίησης (το beer στο παράδειγμα) και μετά σε κάθε ομάδα, εφαρμόζεται ο συγκεντρωτικός υπολογισμός που ορίζεται στο SELECT. Η εικόνα δεξιά απεικονίζει αυτό που πραγματικά γίνεται: Το τελικό αποτέλεσμα απεικονίζεται στην κάτω εικόνα. Φ. Κόκκορας / Τμ. Μηχανικών Πληροφορικής ΤΕ / ΤΕΙ Θεσσαλίας Βάσεις Δεδομένων Ι

19 Ομαδοποίηση Παράδειγμα #2 Για κάθε πόλη και για κάθε μπαρ της πόλης, να υπολογιστεί πόσες μάρκες μπύρας πουλά κάθε μπαρ και σε τι μέση τιμή. SELECT city, bar, count(*) AS 'Πλήθος', avg(price) FROM Bars, Sells WHERE name=bar GROUP BY city, bar; Ο πίνακας αριστερά δίνεται βοηθητικά για να δείτε τα δεδομένα πριν την ομαδοποίηση και τους συγκεντρωτικούς υπολογισμούς. Φ. Κόκκορας / Τμ. Μηχανικών Πληροφορικής ΤΕ / ΤΕΙ Θεσσαλίας Βάσεις Δεδομένων Ι

20 Βασικός Κανόνας Ομαδοποίησης (για να κάνετε γρήγορα σωστές εκφράσεις) Σε χρήση ομαδοποίησης, αν επιπλέον χρησιμοποιείται και κάποια συγκεντρωτική συνάρτηση, τότε όλα τα πεδία που αναφέρονται στο SELECT, πρέπει: είτε να βρίσκονται μέσα σε κάποια συνάρτηση συγκεντρωτικού υπολογισμού ή να αναφέρονται στη λίστα πεδίων του GROUP BY Στο παράδειγμα του προηγούμενου slide: SELECT city, bar, count(*) AS 'Πλήθος', avg(price) FROM Bars, Sells WHERE name=bar GROUP BY city, bar; Παρατηρήσεις: στο SELECT παραπάνω υπάρχουν 4 στήλες (city, bar, πλήθος, μέση τιμή) οι στήλες city, bar που είναι πριν από τις στήλες συγκεντρωτικού υπολογισμού ομαδοποιούνται στο GROUP BY με την ίδια σειρά επιτρέπεται η ταυτόχρονη χρήση περισσοτέρων συναρτήσεων ομαδοποίησης στο τμήμα SELECT, εφόσον είναι επιθυμητό, αρκεί να μην παραβιάζεται ο παραπάνω κανόνας. Φ. Κόκκορας / Τμ. Μηχανικών Πληροφορικής ΤΕ / ΤΕΙ Θεσσαλίας Βάσεις Δεδομένων Ι

21 Δήλωση HAVING Η δήλωση HAVING <condition> επιτρέπει να βάλουμε περιορισμούς στο αποτέλεσμα συγκεντρωτικών πράξεων. Μπαίνει μετά τη δήλωση GROUP BY. Παράδειγμα #1: στο ερώτημα του slide #18 έστω ότι θέλουμε να κρατήσουμε μόνο τις μπύρες με μέση τιμή >5: SELECT beer, AVG(price) AS avgprice FROM Sells GROUP BY beer HAVING avgprice > 5; ορίσαμε νέο όνομα στο μέσο όρο με χρήση του AS - αλλιώς γράφουμε AVG(price)>5 ΠΡΟΣΟΧΗ: η συνθήκη εφαρμόζεται σε κάθε ομάδα που προκύπτει από την ομαδοποίηση και όσες ομάδες δεν ικανοποιούν την συνθήκη απορρίπτονται! Παράδειγμα #2: Να βρεθεί η μέση τιμή για τις μπύρες που είτε πωλούνται σε τουλάχιστον 4 μπαρ ή κατασκευάζονται από την εταιρία Anheuser-Busch. SELECT beer, AVG(price) FROM Sells GROUP BY beer HAVING COUNT(bar) >= 4 OR beer IN ( SELECT name FROM Beers WHERE manf = 'Anheuser-Busch' ); Φ. Κόκκορας / Τμ. Μηχανικών Πληροφορικής ΤΕ / ΤΕΙ Θεσσαλίας Βάσεις Δεδομένων Ι

22 Δήλωση HAVING (συνέχεια) Δείτε δύο διαφορετικές εκδοχές του παραδείγματος 2 (προηγούμενο slide), με ή χωρίς φωλιασμένο ερώτημα. Τα ερωτήματα έχουν στοιχηθεί για εποπτικούς λόγους. SELECT beer, AVG(price) FROM Sells, Beers WHERE beer=name GROUP BY beer, manf HAVING COUNT(bar) >= 4 OR manf='anheuser-busch'; SELECT beer, AVG(price) FROM Sells GROUP BY beer HAVING COUNT(bar) >= 4 OR beer IN (SELECT name FROM Beers WHERE manf='anheuser-busch'); Σχόλια: Όπως έχουμε ξαναδεί, η μή-χρήση φωλιασμένου ερωτήματος (αριστερά) εισάγει επιπλέον πίνακα στο FROM και συνθήκη στο WHERE. Μέσα στο HAVING (δεξιά) δεν μπορούμε να χρησιμοποιήσουμε το manf (όπως κάνουμε αριστερά) διότι δεν υφίσταται τέτοια στήλη μετά τον συγκεντρωτικό υπολογισμό! Έτσι, η χρήση φωλιασμένου ερωτήματος είναι μονόδρομος στη δεξιά προσέγγιση, πλην όμως η αριστερή εκδοχή είναι απλούστερη και προκύπτει εντελώς μηχανικά, εφόσον έχει γίνει κατανοητός ο μηχανισμός! Φ. Κόκκορας / Τμ. Μηχανικών Πληροφορικής ΤΕ / ΤΕΙ Θεσσαλίας Βάσεις Δεδομένων Ι

23 Να δοκιμάσετε όλες τις εντολές στην database mybeersdb που σας δίνεται.... Φ. Κόκκορας / Τμ. Μηχανικών Πληροφορικής ΤΕ / ΤΕΙ Θεσσαλίας Βάσεις Δεδομένων Ι

SQL Data Manipulation Language

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

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

Βάσεις Δεδομένων Ι SQL Μέρος 1 ο. Φώτης Κόκκορας (MSc/PhD) Τμήμα Μηχανικών Πληροφορικής ΤΕ

Βάσεις Δεδομένων Ι SQL Μέρος 1 ο. Φώτης Κόκκορας (MSc/PhD) Τμήμα Μηχανικών Πληροφορικής ΤΕ Βάσεις Δεδομένων Ι - 03 SQL Μέρος 1 ο Φώτης Κόκκορας (MSc/PhD) Τμήμα Μηχανικών Πληροφορικής ΤΕ ΤΕΙ Θεσσαλίας Γιατί SQL; Η SQL είναι γλώσσα πολύ υψηλού επιπέδου Επιτρέπει να λέμε εύκολα τι θέλουμε να κάνουμε

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

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

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

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

Βάσεις Δεδομένων Ι - 06. Ευρετήρια/Indexes. (...και επιδόσεις ΣΔΒΔ) Views (Όψεις) Φώτης Κόκκορας (MSc/PhD) Τμήμα Τεχνολογίας Πληροφορικής & Τηλεπ/νιών

Βάσεις Δεδομένων Ι - 06. Ευρετήρια/Indexes. (...και επιδόσεις ΣΔΒΔ) Views (Όψεις) Φώτης Κόκκορας (MSc/PhD) Τμήμα Τεχνολογίας Πληροφορικής & Τηλεπ/νιών Βάσεις Δεδομένων Ι - 06 Ευρετήρια/Indexes (...και επιδόσεις ΣΔΒΔ) Views (Όψεις) Φώτης Κόκκορας (MSc/PhD) Τμήμα Τεχνολογίας Πληροφορικής & Τηλεπ/νιών ΤΕΙ Λάρισας Τι είναι τα ευρετήρια; Ευρετήριο/Index:

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

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

Τμήμα Πληροφορικής ΑΠΘ Βάσεις Δεδομένων Εργαστήριο ΙΙI Τμήμα Πληροφορικής ΑΠΘ 2013-2014 2 Σκοπός του 3 ου εργαστηρίου Σκοπός αυτού του εργαστηρίου είναι: η μελέτη ερωτημάτων επιλογής, προβολής και απλών συνδέσεων σε δύο ή περισσότερες

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

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

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

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

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

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

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

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

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

Βάσεις Δεδομένων Ι - 05. SQL Μέρος 3 ο. (Constraints & Joins) Φώτης Κόκκορας (MSc/PhD) Τμήμα Μηχανικών Πληροφορικής ΤΕ

Βάσεις Δεδομένων Ι - 05. SQL Μέρος 3 ο. (Constraints & Joins) Φώτης Κόκκορας (MSc/PhD) Τμήμα Μηχανικών Πληροφορικής ΤΕ Βάσεις Δεδομένων Ι - 05 SQL Μέρος 3 ο (Constraints & Joins) Φώτης Κόκκορας (MSc/PhD) Τμήμα Μηχανικών Πληροφορικής ΤΕ ΤΕΙ Θεσσαλίας Πρόσθετες Διαφάνειες σε Προηγούμενα Θέματα...σε Διαγραφή Πλειάδων Σημασιολογία

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

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 Εισαγωγή, γενικές

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

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

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

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

ΤΑΞΙΝΟΜΗΣΗ ΑΠΟΤΕΛΕΣΜΑΤΩΝ ΕΡΩΤΗΜΑΤΟΣ

ΤΑΞΙΝΟΜΗΣΗ ΑΠΟΤΕΛΕΣΜΑΤΩΝ ΕΡΩΤΗΜΑΤΟΣ ΤΑΞΙΝΟΜΗΣΗ ΑΠΟΤΕΛΕΣΜΑΤΩΝ ΕΡΩΤΗΜΑΤΟΣ Η συνθήκη WHERE βάζει περιορισμούς στις εγγραφές που επιστρέφονται. Ο όρος ORDER BY ταξινομεί τις εγγραφές που επιστρέφονται. Παράδειγμα: SELECT * FROM table_name ORDER

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

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

Κεφάλαιο 10 Άλλες Πράξεις Θεωρίας Συνόλων Κεφάλαιο 10 Άλλες Πράξεις Θεωρίας Συνόλων Σύνοψη Στο παρόν κεφάλαιο θα παρουσιαστεί η πράξη της διαίρεσης. Στο κομμάτι των ασκήσεων θα γίνει συνολική επισκόπηση ερωτημάτων που εμπλέκουν πράξεις συνόλων.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Βάσεις Δεδομένων. Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα Βάσεις Δεδομένων Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα Στέργιος Παλαμάς, Υλικό Μαθήματος «Βάσεις Δεδομένων», 2015-2016 Κεφάλαιο 6: Structured Query Language (SQL) Μια γλώσσα Βάσεων

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

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

Τμήμα Πληροφορικής ΑΠΘ Βάσεις Δεδομένων Εργαστήριο ΙΙ Τμήμα Πληροφορικής ΑΠΘ 2013-2014 2 Σκοπός του 2 ου εργαστηρίου Σκοπός αυτού του εργαστηρίου είναι: Η μελέτη ερωτημάτων σε μία μόνο σχέση. Εξετάζουμε τους τελεστές επιλογής

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

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

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

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

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

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

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

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

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

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

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

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

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

Βάσεις Δεδομένων Προχωρημένα Ερωτήματα 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 Βάσεις Δεδομένων

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

SQL Data Manipulation Language

SQL Data Manipulation Language Εμφωλευμένες επερωτήσεις (Nested Queries) Μια εντολή select μπορεί να περιέχει μια άλλη εντολή select αλλά υπό περιορισμούς Μια εντολή select που εμφανίζεται μέσα σε μια άλλη εντολή select ονομάζεται subselect.

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

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

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

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

Βάσεις Δεδομένων Ι 8. Ερωτήματα (B) Τμήμα Διοίκησης Επιχειρήσεων (Μεσολόγγι) ΤΕΙ Δυτικής Ελλάδας

Βάσεις Δεδομένων Ι 8. Ερωτήματα (B) Τμήμα Διοίκησης Επιχειρήσεων (Μεσολόγγι) ΤΕΙ Δυτικής Ελλάδας Βάσεις Δεδομένων Ι 8 Ερωτήματα (B) Τμήμα Διοίκησης Επιχειρήσεων (Μεσολόγγι) ΤΕΙ Δυτικής Ελλάδας ΝΙΚΟΣ ΚΑΡΟΥΣΟΣ - ΔΙΟΝΥΣΗΣ ΚΑΡΟΥΣΟΣ XE 2015-2016 Λογικά κριτήρια σε κείμενο Ίσο = " _" Διάφορο " _ " ή

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

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

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

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

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

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ - ΣΧΕΣΙΑΚΗ ΑΛΓΕΒΡΑ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ - ΣΧΕΣΙΑΚΗ ΑΛΓΕΒΡΑ Διδάσκων του μαθήματος 2 Δρ. Λεωνίδας Φραγγίδης Τμήμα Διοίκησης Επιχειρήσεων ΤΕΙ ΑΜΘ Email: fragidis@teiemt.gr Ώρες Γραφείου: Τρίτη (10:00 12:00) Προτεινόμενα Βιβλία

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

Κεφάλαιο 9 Συναθροίσεις

Κεφάλαιο 9 Συναθροίσεις Κεφάλαιο 9 Συναθροίσεις Σύνοψη Στο παρόν κεφάλαιο θα παρουσιαστούν ερωτήματα συνάθροισης χρησιμοποιώντας τις βασικές συναρτήσεις MAX, MIN, AVG, SUM και COUNT. Θα παρουσιαστεί η χρήση της ομαδοποίησης εγγραφών

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

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

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

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

5. Επερώτηση XML Εγγράφων: Εισαγωγή στη Γλώσσα XQuery

5. Επερώτηση XML Εγγράφων: Εισαγωγή στη Γλώσσα XQuery Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων 5. Επερώτηση XML Εγγράφων: Εισαγωγή στη Γλώσσα XQuery ιαχείριση εδομένων στον Παγκόσμιο Ιστό Χρήστος ουλκερίδης

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

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

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

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

Βάσεις εδοµένων 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?

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

ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ 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 Μια γλώσσα σχεσιακής βάσης

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

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

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

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

Query-by-Example (QBE)

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

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

Βάσεις Δεδομένων. Ενότητα 7.1: Structured Query Language - 1 ο Μέρος. Αθανάσιος Σπυριδάκος Τμήμα Διοίκησης Επιχειρήσεων

Βάσεις Δεδομένων. Ενότητα 7.1: Structured Query Language - 1 ο Μέρος. Αθανάσιος Σπυριδάκος Τμήμα Διοίκησης Επιχειρήσεων ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Βάσεις Δεδομένων Ενότητα 7.1: Structured Query Language - 1 ο Μέρος Αθανάσιος Σπυριδάκος Τμήμα Διοίκησης Επιχειρήσεων Άδειες Χρήσης

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

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

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

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

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 δε συμμετείχε το γνώρισμα

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ.

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ Εισαγωγή στη MySQL Νικόλαος Ζ. Ζάχαρης Τι είναι η MySql Είναι ένα Σχεσιακό Σύστημα Διαχείρισης

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

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

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

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

Τα συγκεντρωτικά ερωτήματα αφορούν στην ομαδοποίηση των δεδομένων και στη. χρήση συναρτήσεων ομαδοποίησης κατά την εκτέλεση ενός ερωτήματος προβολής Εργαστήριο 8 ο Συγκεντρωτικά ερωτήματα Ερωτήματα διασταύρωσης Ερωτήματα Ενεργειών Συγκεντρωτικά ερωτήματα Τα συγκεντρωτικά ερωτήματα αφορούν στην ομαδοποίηση των δεδομένων και στη χρήση συναρτήσεων ομαδοποίησης

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

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

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

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

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

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

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

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

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

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

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

Τελεστής Προβολής - Παράδειγμα. Π Πόλη, Εξάμηνο (Φοιτητές) Σχεσιακή Άλγεβρα Προβολή, Επιλογή, Καρτεσιανό Γινόμενο, Ένωση, Διαφορά, Σύνθεση Τελεστών, Μετονομασία, Παραδείγματα Ερωτήσεων, Τομή Συνόλων, Φυσική Σύζευξη 1 Σχεσιακή Άλγεβρα Η σχεσιακή άλγεβρα (relational

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

Διάλεξη 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,

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

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

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

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

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

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

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

Λογαριασμοί & Δικαιώματα

Λογαριασμοί & Δικαιώματα Βάσεις Δεδομένων Ι - 08 Λογαριασμοί & Δικαιώματα (σε έναν database server) Φώτης Κόκκορας (MSc/PhD) Τμήμα Μηχανικών Πληροφορικής ΤΕ ΤΕΙ Θεσσαλίας Βασικές Έννοιες Κάθε RDBMS (Relational Database Management

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

DELETE, UPDATE, INSERT.

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

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

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

Βάσεις Δεδομένων Ευαγγελία Πιτουρά 2. Εννοιολογικός Σχεδιασμός Βάσεων εδομένων (με χρήση του Μοντέλου Οντοτήτων/Συσχετίσεων) Σχεσιακή Άλγεβρα Βάσεις Δεδομένων 2009-2010 Ευαγγελία Πιτουρά 1 Εισαγωγή Στα προηγούμενα μαθήματα: Εννοιολογικός Σχεδιασμός Βάσεων εδομένων (με χρήση του Μοντέλου Οντοτήτων/Συσχετίσεων) Λογικός Σχεδιασμός

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

DELETE, UPDATE, INSERT

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

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

ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ. Εισαγωγή στη Python

ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ. Εισαγωγή στη Python ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ ΠΛΗΡΟΦΟΡΙΚΗ ΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Εισαγωγή στη Python Νικόλαος Ζ. Ζάχαρης Αναπληρωτής

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

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

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

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

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

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

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

Αντώνης Χρυσόπουλος Στέλιος Μόσχογλου Θεοδόσης Σουργκούνης MYSQL PHP ADVANCED. Χέρι χέρι με τον Καρατζαφέρη

Αντώνης Χρυσόπουλος Στέλιος Μόσχογλου Θεοδόσης Σουργκούνης MYSQL PHP ADVANCED. Χέρι χέρι με τον Καρατζαφέρη Αντώνης Χρυσόπουλος Στέλιος Μόσχογλου Θεοδόσης Σουργκούνης MYSQL PHP ADVANCED Χέρι χέρι με τον Καρατζαφέρη Τα μάθατε καλέ κυρία? 1. Ψευδώνυμα Πινάκων 2. Ένωση Πίνακα με τον εαυτό του 3. Ομαδοποίηση 4.

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

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

Βάσεις Δεδομένων 2010-2011 Ευαγγελία Πιτουρά 2. Εννοιολογικός Σχεδιασμός Βάσεων εδομένων (με χρήση του Μοντέλου Οντοτήτων/Συσχετίσεων) Σχεσιακή Άλγεβρα Βάσεις Δεδομένων 2010-2011 Ευαγγελία Πιτουρά 1 Εισαγωγή Στα προηγούμενα μαθήματα: Εννοιολογικός Σχεδιασμός Βάσεων εδομένων (με χρήση του Μοντέλου Οντοτήτων/Συσχετίσεων) Λογικός Σχεδιασμός

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

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

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

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

3.1 Αριθμητικοί και Λογικοί Τελεστές, Μετατροπές Τύπου (Casting)

3.1 Αριθμητικοί και Λογικοί Τελεστές, Μετατροπές Τύπου (Casting) Εργαστήριο 3: 3.1 Αριθμητικοί και Λογικοί Τελεστές, Μετατροπές Τύπου (Casting) Η C++, όπως όλες οι γλώσσες προγραμματισμού, χρησιμοποιεί τελεστές για να εκτελέσει τις αριθμητικές και λογικές λειτουργίες.

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

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

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

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

Δομές Ακολουθίας- Επιλογής - Επανάληψης. Δομημένος Προγραμματισμός

Δομές Ακολουθίας- Επιλογής - Επανάληψης. Δομημένος Προγραμματισμός Δομές Ακολουθίας- Επιλογής - Επανάληψης Δομημένος Προγραμματισμός 1 Βασικές Έννοιες αλγορίθμων Σταθερές Μεταβλητές Εκφράσεις Πράξεις Εντολές 2 Βασικές Έννοιες Αλγορίθμων Σταθερά: Μια ποσότητα που έχει

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

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

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

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

Κεφάλαιο 3. Ερωτήματα SQL

Κεφάλαιο 3. Ερωτήματα SQL Κεφάλαιο 3. Ερωτήματα SQL Σύνοψη Σ αυτό το κεφάλαιο θα παρουσιάσουμε βασικά και σύνθετα ερωτήματα της SQL. Τα ερωτήματα θα υποβληθούν στην βάση δεδομένων DVDclub που δημιουργήθηκε στο προηγούμενο κεφάλαιο.

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

1 / 87

1 / 87 Τα πρώτα ερωτήματα SQL Αθανάσιος Σταυρακούδης http://stavrakoudis.econ.uoi.gr Άνοιξη 2016 1 / 87 Δυο λόγια για την SQL Υλοποίηση του σχεσιακού μοντέλου δεδομένων του E.F. Codd, αρχικά ως DSl/Alpha, αργότερα

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

ΠΑΡΑΔΕΙΓΜΑΤΑ ΘΕΜΑ Β. 2x 1. είναι Τότε έχουμε: » τον χρησιμοποιούμε κυρίως σε θεωρητικές ασκήσεις.

ΠΑΡΑΔΕΙΓΜΑΤΑ ΘΕΜΑ Β. 2x 1. είναι Τότε έχουμε: » τον χρησιμοποιούμε κυρίως σε θεωρητικές ασκήσεις. ΚΕΦΑΛΑΙΟ ο: ΣΥΝΑΡΤΗΣΕΙΣ - ΟΡΙΟ - ΣΥΝΕΧΕΙΑ ΣΥΝΑΡΤΗΣΗΣ ΕΝΟΤΗΤΑ : ΣΥΝΑΡΤΗΣΗ - ΑΝΤΙΣΤΡΟΦΗ ΣΥΝΑΡΤΗΣΗ [Υποκεφάλαιο. Μονότονες συναρτήσεις Αντίστροφη συνάρτηση του σχολικού βιβλίου]. ΠΑΡΑΔΕΙΓΜΑΤΑ Παράδειγμα.

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

2ο ΓΕΛ ΑΓ.ΔΗΜΗΤΡΙΟΥ ΑΕΠΠ ΘΕΟΔΟΣΙΟΥ ΔΙΟΝ ΠΡΟΣΟΧΗ ΣΤΑ ΠΑΡΑΚΑΤΩ

2ο ΓΕΛ ΑΓ.ΔΗΜΗΤΡΙΟΥ ΑΕΠΠ ΘΕΟΔΟΣΙΟΥ ΔΙΟΝ ΠΡΟΣΟΧΗ ΣΤΑ ΠΑΡΑΚΑΤΩ ΠΡΟΣΟΧΗ ΣΤΑ ΠΑΡΑΚΑΤΩ ΣΤΑΘΕΡΕΣ είναι τα μεγέθη που δεν μεταβάλλονται κατά την εκτέλεση ενός αλγόριθμου. Εκτός από τις αριθμητικές σταθερές (7, 4, 3.5, 100 κλπ), τις λογικές σταθερές (αληθής και ψευδής)

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

Στη C++ υπάρχουν τρεις τύποι βρόχων: (a) while, (b) do while, και (c) for. Ακολουθεί η σύνταξη για κάθε μια:

Στη C++ υπάρχουν τρεις τύποι βρόχων: (a) while, (b) do while, και (c) for. Ακολουθεί η σύνταξη για κάθε μια: Εργαστήριο 6: 6.1 Δομές Επανάληψης Βρόγχοι (Loops) Όταν θέλουμε να επαναληφθεί μια ομάδα εντολών τη βάζουμε μέσα σε ένα βρόχο επανάληψης. Το αν θα (ξανα)επαναληφθεί η εκτέλεση της ομάδας εντολών καθορίζεται

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

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

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

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

1 / 97

1 / 97 Τα πρώτα ερωτήματα SQL Αθανάσιος Σταυρακούδης http://stavrakoudis.econ.uoi.gr Άνοιξη 2014 1 / 97 Περιεχόμενα 1 Εισαγωγικά σχόλια και παρατηρήσεις 2 Απλά ερωτήματα προβολής, επιλέγοντας στήλες από ένα πίνακα

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

DISTINCT, LIKE, NULL, AND, OR, BETWEEN

DISTINCT, LIKE, NULL, AND, OR, BETWEEN Περισσότερα για τα απλά ερωτήματα SQL DISTINCT, LIKE, NULL, AND, OR, BETWEEN Αθανάσιος Σταυρακούδης http://stavrakoudis.econ.uoi.gr Άνοιξη 2014 1 / 66 Σκοπός του μαθήματος Αποκλείσετε διπλοεγγραφές από

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

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

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

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

Εργαστήριο 10o. Συγκεντρωτικά Ερωτήματα Ερωτήματα Διασταύρωσης Ερωτήματα Ενεργειών. Ευάγγελος Γ. Καραπιδάκης

Εργαστήριο 10o. Συγκεντρωτικά Ερωτήματα Ερωτήματα Διασταύρωσης Ερωτήματα Ενεργειών. Ευάγγελος Γ. Καραπιδάκης Εργαστήριο 10o Συγκεντρωτικά Ερωτήματα Ερωτήματα Διασταύρωσης Ερωτήματα Ενεργειών Συγκεντρωτικά ερωτήματα Με τα συγκεντρωτικά ερωτήματα μπορούμε να ομαδοποιήσουμε τα δεδομένα μας και να υπολογίσουμε για

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

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

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

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

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

Σχεσιακή Άλγεβρα. Βάσεις Δεδομένων : Σχεσιακή Άλγεβρα 1 Εισαγωγή Στα προηγούμενα μαθήματα: Εννοιολογικός Σχεδιασμός Βάσεων εδομένων (με χρήση του Μοντέλου Οντοτήτων/Συσχετίσεων) Λογικός Σχεδιασμός Βάσεων εδομένων (με χρήση του Σχεσιακού Μοντέλου) Αντιστοιχία

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

Διαδικασιακός Προγραμματισμός

Διαδικασιακός Προγραμματισμός Τμήμα ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ ΤΕΙ ΔΥΤΙΚΗΣ ΕΛΛΑΔΑΣ Διαδικασιακός Προγραμματισμός Διάλεξη 2 η Τύποι Δεδομένων Δήλωση Μεταβλητών Έξοδος Δεδομένων Οι διαλέξεις βασίζονται στο βιβλίο των Τσελίκη και Τσελίκα

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

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

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

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

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

Ορισμοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL Εισαγωγή Μοντελοποίηση Στα προηγούμενα μαθήματα: Ορισμοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL Εννοιολογικός Σχεδιασμός Βάσεων εδομένων (με χρήση του Μοντέλου Οντοτήτων/Συσχετίσεων) Λογικός

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

Πολυωνυμικές εξισώσεις και ανισώσεις Εξισώσεις και ανισώσεις που ανάγονται σε πολυωνυμικές

Πολυωνυμικές εξισώσεις και ανισώσεις Εξισώσεις και ανισώσεις που ανάγονται σε πολυωνυμικές 0 Πολυωνυμικές εξισώσεις και ανισώσεις Εξισώσεις και ανισώσεις που ανάγονται σε πολυωνυμικές Α. ΑΠΑΡΑΙΤΗΤΕΣ ΓΝΩΣΕΙΣ ΘΕΩΡΙΑΣ Για να λύσουμε μια πολυωνυμική εξίσωση P(x) 0 (ή μια πολυωνυμική ανίσωση P(x)

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

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

ΓΛΩΣΣΑ ΑΛΦΑΒΗΤΟ ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ ΣΤΑΘΕΡΕΣ ΜΕΤΑΒΛΗΤΕΣ ΓΛΩΣΣΑ ΑΛΦΑΒΗΤΟ Κεφαλαία και μικρά γράμματα ελληνικού αλφαβήτου: Α Ω και α ω Κεφαλαία και μικρά γράμματα λατινικού αλφαβήτου: A Z και a z Αριθμητικά ψηφία: 0 9 Ειδικοί χαρακτήρες: + - * / =. ( ),! & κενός

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

Ιατρική Πληροφορική. Δρ. Π. ΑΣΒΕΣΤΑΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΒΙΟΪΑΤΡΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ Τ.Ε.

Ιατρική Πληροφορική. Δρ. Π. ΑΣΒΕΣΤΑΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΒΙΟΪΑΤΡΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ Τ.Ε. Ιατρική Πληροφορική Δρ. Π. ΑΣΒΕΣΤΑΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΒΙΟΪΑΤΡΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ Τ.Ε. Χρήσιμοι Σύνδεσμοι Σημειώσεις μαθήματος: http://medisp.bme.teiath.gr/eclass/courses/tio103/ https://eclass.teiath.gr/courses/tio100/

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

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

Σύνολα Ασκήσεων. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Σύνολα Ασκήσεων Βάσεις Δεδομένων 2018-2019 Ευαγγελία Πιτουρά 1 2 ο Σύνολο Ασκήσεων Άσκηση 3 Οι λύσεις είναι ενδεικτικές υπάρχουν και άλλες σωστές SQL ερωτήσεις για τα ερωτήματα της άσκησης. 2 (γ)(i) Τους

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

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

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

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

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

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

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

A ΕΠΑ.Λ ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 5 η ΕΝΟΤΗΤΑ: ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Εκπαιδευτικοί: ΓΑΛΑΝΟΣ ΓΕΩΡΓΙΟΣ ΜΠΟΥΣΟΥΝΗΣ ΚΩΝΣΤΑΝΤΙΝΟΣ

A ΕΠΑ.Λ ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 5 η ΕΝΟΤΗΤΑ: ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Εκπαιδευτικοί: ΓΑΛΑΝΟΣ ΓΕΩΡΓΙΟΣ ΜΠΟΥΣΟΥΝΗΣ ΚΩΝΣΤΑΝΤΙΝΟΣ A ΕΠΑ.Λ ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 5 η ΕΝΟΤΗΤΑ: ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Εκπαιδευτικοί: ΓΑΛΑΝΟΣ ΓΕΩΡΓΙΟΣ ΜΠΟΥΣΟΥΝΗΣ ΚΩΝΣΤΑΝΤΙΝΟΣ 1 Βάση Δεδομένων: Με το όρο Βάση Δεδομένων εννοούμε ένα σύνολο δεδομένων που είναι οργανωμένο

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

Οψεις (VIEWS) στην SQL Η εντολή CREATE VIEW Αθανάσιος Σταυρακούδης http://stavrakoudis.econ.uoi.gr Άνοιξη 2014 1 / 55 Περιεχόμενα 1 Εισαγωγικά για τις όψεις 2 Οψεις και συζεύξεις 3 Επιπλέον χρήση των όψεων

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

Περιληπτικά, τα βήματα που ακολουθούμε γενικά είναι τα εξής:

Περιληπτικά, τα βήματα που ακολουθούμε γενικά είναι τα εξής: Αυτό που πρέπει να θυμόμαστε, για να μη στεναχωριόμαστε, είναι πως τόσο στις εξισώσεις, όσο και στις ανισώσεις 1ου βαθμού, που θέλουμε να λύσουμε, ακολουθούμε ακριβώς τα ίδια βήματα! Εκεί που πρεπει να

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

Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client

Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client ΕΣΔ 516 Τεχνολογίες Διαδικτύου Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client Περιεχόμενα Περιεχόμενα Javascript και HTML Βασική σύνταξη Μεταβλητές Τελεστές Συναρτήσεις

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

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

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

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

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

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ ΠΡΟΣΟΜΟΙΩΣΗΣ ΠΑΝΕΛΛΑΔΙΚΩΝ ΣΧΟΛΙΚΟΥ ΕΤΟΥΣ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ ΠΡΟΣΟΜΟΙΩΣΗΣ ΠΑΝΕΛΛΑΔΙΚΩΝ ΣΧΟΛΙΚΟΥ ΕΤΟΥΣ 2014-2015 Πάτρα 5/5/2015 Ονοματεπώνυμο:.. Θέμα Α Α1. α. Να γράψετε στο τετράδιό σας τον

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

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

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

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

K15 Ψηφιακή Λογική Σχεδίαση 7-8: Ανάλυση και σύνθεση συνδυαστικών λογικών κυκλωμάτων

K15 Ψηφιακή Λογική Σχεδίαση 7-8: Ανάλυση και σύνθεση συνδυαστικών λογικών κυκλωμάτων K15 Ψηφιακή Λογική Σχεδίαση 7-8: Ανάλυση και σύνθεση συνδυαστικών λογικών κυκλωμάτων Γιάννης Λιαπέρδος TEI Πελοποννήσου Σχολή Τεχνολογικών Εφαρμογών Τμήμα Μηχανικών Πληροφορικής ΤΕ Η έννοια του συνδυαστικού

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

H SQL είναι η γλώσσα για όλα τα εμπορικά σχεσιακά συστήματα διαχείρισης βάσεων δεδομένων

H SQL είναι η γλώσσα για όλα τα εμπορικά σχεσιακά συστήματα διαχείρισης βάσεων δεδομένων Η γλώσσα SQL H SQL είναι η γλώσσα για όλα τα εμπορικά σχεσιακά συστήματα διαχείρισης βάσεων δεδομένων H SQL έχει διάφορα τμήματα: Γλώσσα Ορισμού Δεδομένων (ΓΟΔ) Γλώσσα Χειρισμού Δεδομένων (ΓΧΔ) Ενσωματωμένη

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

ΘΕΜΑΤΑ. Θέμα 1 ο Σύμφωνα με τους παραπάνω πίνακες και τη θέση που έχουν τα ξένα κλειδιά βρείτε τους

ΘΕΜΑΤΑ. Θέμα 1 ο Σύμφωνα με τους παραπάνω πίνακες και τη θέση που έχουν τα ξένα κλειδιά βρείτε τους ΘΕΜΑΤΑ A Οι παρακάτω πίνακες αποτελούνται από τα εξής πεδία : ΕΡΓΑΖΟΜΕΝΟΣ : ΑΦΜ, ΕΠΙΘΕΤΟ, ΟΝΟΜΑ, ΤΗΛ, ΟΔΟΣ, ΠΟΛΗ,ΜΙΣΘΟΣ, ΚΤ ΤΜΗΜΑ : ΚΤ, ΑΦΜ, ΤΙΤΛΟΣ_ΤΜΗΜΑΤΟΣ, ΤΗΛ ΕΡΓΑ : ΚΕΡ, ΠΕΡΙΓΡΑΦΗ, ΤΟΠΟΘΕΣΙΑ, ΠΡΟΫΠΟΛΟΓΙΣΜΟΣ

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

Διαδικασιακός Προγραμματισμός

Διαδικασιακός Προγραμματισμός Τμήμα ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ ΤΕΙ ΔΥΤΙΚΗΣ ΕΛΛΑΔΑΣ Διαδικασιακός Προγραμματισμός Διάλεξη 13 η Δομές & Ενώσεις Οι διαλέξεις βασίζονται στο βιβλίο των Τσελίκη και Τσελίκα C: Από τη Θεωρία στην Εφαρμογή

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