Βάσεις Δεδομένων. Structured Query Language -SQL. Φροντιστήριο 5 ο

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

Download "Βάσεις Δεδομένων. Structured Query Language -SQL. Φροντιστήριο 5 ο"

Transcript

1 Βάσεις Δεδομένων Structured Query Language -SQL Φροντιστήριο 5 ο

2 Η Γλώσσα SQL Τα βασικά της συστατικά: Γλώσσα Ορισμού Δεδομένων (Data Definition Language (DDL)) Ορισμός, δημιουργία, τροποποίηση και διαγραφή σχήματος Γλώσσα Χειρισμού Δεδομένων (Data Manipulation Language (DML)) Ορισμός, δημιουργία, τροποποίηση, διαγραφή και επιλογή δεδομένων ΓΛΩΣΣΑ ΕΡΩΤΗΣΕΩΝ

3 ΕΠΙΣΚΟΠΙΣΗ SQL ΓΧΔ select, from, where Διάταξη Joins Πράξεις συνόλων Συναθροιστικές Συναρτήσεις Εμφωλευμένες υπο-ερωτήσεις Άλλα μέρη: ΓΟΔ, ορισμός όψεων, εμφυτευμένη SQL, κα.

4 Παράδειγμα 1 ο - ΠΡΕΣΒΕΙΕΣ TABLE: EMBASSY ID_Embassy Embassy_Name District Street Num Country_ ID 1 CHINESE EMBASSY IN ATHENS PSYCHIKO KRINON STR 2A BRITISH EMBASSY IN ATHENS ATHENS PLOUTARHOU STR CYPRIAN EMBASSY IN ATHENS ATHENS HERODOTOU STR RUSSIAN EMBASSY IN ATHENS PSYCHIKO NIK.LYTRA STR FRENCH CONSULATE IN THESSALONIKI THESSALONIKI MAKENZY KING STR FINLAND CONSULATE IN THESSALONIKI ORAIOKASTRO ORAIOKASTROU 7KM GREEK EMBASSY IN PARIS PARIS RUE AUGUSTE VACQUERIE GREEK CONSULATE IN MASELLIE MASELLIE RUE RIGNAN GREEK EMBASSY IN NICOSIA NICOSIA VYRONOS AV GREEK EMBASSY IN MOSCOW MOSCOW LEONTIEFSKI PER GREEK COSULATE IN ST.PETERSBURG ST.PETERSBURG MIKHAILOVSKAYA ULITSA-HOTEL EUROPE 1/ GREEK COSULATE IN NOVOROSSISK NOVOROSSISK ICAEVA-HOTEL NOVOROSSISK GREEK ENBASSY IN LONDON W11 HOLLAND PARK 1A BRITISH EMBASSY IN MOSCOW MOSCOW SMOLENSKAYA NABEREZHNAYA BRITISH EMBASSY IN HELSINKI HELSINKI ITAINEN PUISTOTIE RUSSIAN EMBASSY IN LONDON W8 4QS KENSINGTON PALACE GARDENS, CHINESE EMBASSY IN LONDON W1B 1JL ORTLAND PLACE FINLAND EMBASSY IN LONDON SW1X 8HW CHESHAM PLACE FRENCH EMBASSY IN LONDON SW1X 7JT KNIGHTSBRIDGE City_ID TABLE: AMBASSADOR ID_Embassy ID NAME SURNAME 8 1 NIKOLAOS FOKAS 10 2 MARIA KOUFOPOULOU 11 3 IOANNHS KARAVATOS 12 4 IOANNIS KOMNINOS NULL 5 GEORGIOS IOANNIDIS 13 6 EMMANOUHL ATHANASIADIS NULL 7 ELENH PALAIOLOGOU TABLE: CITY ID_City City_Name IDCountry 1 ATHENS 1 2 LONDON 5 3 THESSALONIKI 1 4 PARIS 3 5 MASSELLIE 3 6 LEYKOSIA 6 7 MOSCOW 7 8 ST.PETERSBURG 7 9 NOVOROSSISK 7 10 HELSINKI 2 TABLE: COUNTRY ID_COUNTRY COUNTRY_NAME 1 GREECE 2 FINLAND 3 FRENCH 4 CHINA 5 GREAT BRITAIN 6 CYPRUS 7 RUSSIA 8 HUNGARY

5 SELECT - Επιλογή Γενική μορφή select a1, a2, an from r1, r2, rm where P [order by.] [group by ] [having ] select distinct a1, a2, an from r1, r2, rm where P π 1, 2,... ( σ ( r a a an P 1 r 2... rm )) Επιλέγουμε να προβάλουμε τα γνωρίσματα α1,α2,...,αn Απότηνσχέσηπουπροκύπτειαπότην/τις σχέσεις r1 x r2. Μόνο τις πλειάδες για τις οποίες η συνθήκη P είναι αληθής

6 Ερώτηση 1 η : Επιλέξετε τα στοιχεία των χωρών με ID μικρότερο από 3 SELECT * FROM COUNTRY WHERE ID_COUNTRY <3 Επιστρέφονται όλα τα γνωρίσματα TABLE: COUNTRY ID_COUNTRY COUNTRY_NAME 1 GREECE 2 FINLAND

7 Ερώτηση 2 η : Ποιο το όνομα της πρεσβείας και ποια η αντίστοιχη οδός για κάθε πρεσβεία που βρίσκεται στην περιοχή Ψυχικό SELECT EMBASSY_NAME,STREET FROM EMBASSY WHERE DISCTICT = PSYCHIKO TABLE: EMBASSY EMBASSY_NAME CHINESE EMBASSY IN ATHENS RUSSIAN EMBASSY IN ATHENS STREET KRINON STR NIK.LYTRA STR

8 Παρατηρήσεις: Στην SQL επιτρέπονται διπλότυπες εγγραφές τόσο σε σχέσεις όσο και αποτελέσματα ερωτημάτων SELECT [distinct all ] IDCOUNTRY FROM CITY Απαλείφει διπλότυπες πλειάδες TABLE: CITY IDCOUNTRY TABLE: CITY IDCOUNTRY Δεν απαλείφει διπλότυπες πλειάδες

9 Συνθήκη WHERE Επιστρέφει μόνο τις πλειάδες για τις οποίες η συνθήκη P είναι αληθής. Λογικοί σύνδεσμοι : and, or, not Τελεστές σύγκρισης: <,=,>,>=,<=,<>,between, not between Έλεγχος κενών τιμών : is NULL, is not NULL

10 Ερώτηση 3 η : Επιλέξετεταστοιχείατων των χωρών με ID μικρότερο ίσο από 5 και μεγαλύτερο ίσο από 3 SELECT * FROM COUNTRY WHERE ID_COUNTRY >=3 and ID_COUNTRY <=5 ή SELECT * FROM COUNTRY WHERE ID_COUNTRY BETWEEN 3 AND 5 TABLE: COUNTRY ID_COUNTRY COUNTRY_NAME 3 FRENCH 4 CHINA 5 GREAT BRITAIN

11 Ερώτηση 4 η : Επιλέξετεταστοιχείατων των χωρών με ID μεγαλύτερο από 5 ή μικρότερο από 3 SELECT * FROM COUNTRY WHERE ID_COUNTRY >5 or ID_COUNTRY <3 ή SELECT * FROM COUNTRY WHERE ID_COUNTRY NOT BETWEEN 3 AND 5 TABLE: COUNTRY ID_COUNTRY COUNTRY_NAME 1 GREECE 2 FINLAND 6 CYPRUS 7 RUSSIA 8 HUNGARY

12 Ερώτηση 5 η :Επιλέξτε όλα τα στοιχεία των εν ενεργεία πρεσβευτών SELECT * FROM AMBASSADOR WHERE ID_EMBASSY IS NOT NULL TABLE: AMBASSADOR ID_Embassy ID NAME SURNAME 8 1 NIKOLAOS FOKAS 10 2 MARIA KOUFOPOULOU 11 3 IOANNHS KARAVATOS 12 4 IOANNIS KOMNINOS 13 6 EMMANOUHL ATHANASIADIS

13 Σειρά εμφάνισης Εγγραφών Order by attr-list SELECT * FROM AMBASSADOR ORDER BY NAME desc SELECT * FROM AMBASSADOR ORDER BY NAME asc, ID desc; Asc : κατά αύξουσα σειρά Desc: κατά φθίνουσα σειρά Ταξινόμηση: Χρονοβόρα πράξη

14 Ερώτηση 6 η :Επιλέξτε όλα τα στοιχεία των πρεσβευτών ταξινομημένα με βάση το όνομα κατά φθίνουσα σειρά SELECT * FROM AMBASSADOR ORDER BY NAME desc TABLE: AMBASSADOR ID_Embassy ID NAME SURNAME 8 1 NIKOLAOS FOKAS 10 2 MARIA KOUFOPOULOU 11 3 IOANNIS KARAVATOS 12 4 IOANNIS KOMNINOS NULL 5 GEORGIOS IOANNIDIS 13 6 EMMANOUHL ATHANASIADIS NULL 7 ELENH PALAIOLOGOU

15 Ερώτηση 7 η :Επιλέξτε όλα τα στοιχεία των πρεσβευτών ταξινομημένα με βάση το όνομα κατά φθίνουσα σειρά και με βάση το ID κατά φθίνουσα σειρά επίσης SELECT * FROM AMBASSADOR ORDER BY NAME desc, ID desc; Σχήμα βάσης TABLE: AMBASSADOR ID_Embassy ID NAME SURNAME 8 1 NIKOLAOS FOKAS 10 2 MARIA KOUFOPOULOU 12 4 IOANNIS KARAVATOS 11 3 IOANNIS KOMNINOS NULL 5 GEORGIOS IOANNIDIS 13 6 EMMANOUHL ATHANASIADIS NULL 7 ELENH PALAIOLOGOU

16 Πράξεις με Συμβολοσειρές ΤΕΛΕΣΤΗΣ LIKE 1. SELECT * FROM AMBASSADOR WHERE NAME = GIANNIS 2. SELECT * FROM AMBASSADOR WHERE NAME like GIANNIS 3. SELECT * FROM AMBASSADOR WHERE NAME not like E% 4. SELECT * FROM AMBASSADOR WHERE NAME like %S 5. SELECT * FROM AMBASSADOR WHERE NAME like _O%S 6. SELECT * FROM AMBASSADOR WHERE NAME like %I N_S %: ταιριάζει οποιαδήποτε συμβολοσειρά (n χαρακτήρες) _: ταιριάζει οποιοδήποτε χαρακτήρα (1 χαρακτήρας) Η SQL υποστηρίζει ποικιλία πράξεων σε αλφαριθμητικές παραστάσεις όπως Η συνένωση(using ) Μετατροπή σε converting από κεφαλαία σε μικρά και το αντίστροφο Εξαγωγή υπό-αλφαριθμητικών Υπολογισμός μήκους αλφαριθμητικού κτλ

17 Συνθήκη FROM Ορίζει από ποιο σχήμα θα επιστραφούν εγγραφές. Μπορεί να αναφέρεται σε ένα σχήμα ή σε συνδυασμό δύο ή περισσότερων σχημάτων Cross join Equi join Theta join Inner join Natural join Outer join Left Right Full

18 Ερώτηση από έναν πίνακα: Ερώτηση 8 η : Επιλέξετε τα στοιχεία των όλων των χωρών SELECT * FROM COUNTRY TABLE: COUNTRY ID_COUNTRY COUNTRY_NAME 1 GREECE 2 FINLAND 3 FRENCH 4 CHINA 5 GREAT BRITAIN 6 CYPRUS 7 RUSSIA 8 HUNGARY

19 Cross Join (υλοποίηση καρτεσιανού γινομένου) Ερώτηση 9 η : Επιλέξετε τα στοιχεία των πόλεων και των χωρών SELECT * FROM COUNTRY, CITY (Το ερώτημα αυτό δεν έχει νόημα στον πραγματικό κόσμο!!! Γιατί???) Εμφανίζονται μόνο τα 10 πρώτα αποτελέσματα... TABLE: COUNTRY x CITY ID_COUNTRY COUNTRY_NAME ID_CITY CITY_NAME IDCOUNTRY 1 GREECE 1 ATHENS 1 2 FINLAND 1 ATHENS 1 3 FRENCH 1 ATHENS 1 4 CHINA 1 ATHENS 1 5 GREAT BRITAIN 1 ATHENS 1 6 CYPRUS 1 ATHENS 1 7 RUSSIA 1 ATHENS 1 8 HUNGARY 1 ATHENS 1 1 GREECE 2 LONDON 5 2 FINLAND 2 LONDON 5

20 Equi-Join ΣΥΝΝΕΝΩΣΗ ΙΣΟΤΗΤΑΣ Χρησιμοποιείται για να συνενώσει πλειάδες για τις οποίες είναι αληθής μία συνθήκη ισότητας. Χρησιμοποιούμε στην συνθήκη WHERE Όταν η συνθήκη ισότητας περιλαμβάνει ζεύγος ξένο κλειδί σχέσης Α που δείχνει στο πρωτεύον κλειδί σχέσης Β και πρωτεύον κλειδί σχέσης Β τότε επιστρέφονται εγγραφές που έχουν νόημα στο πραγματικό κόσμο Μπορούμε να εμπλουτίσουμε την συνθήκη με επιπλέον συνθήκη με τους λογικούς τελεστές (and, or, not κτλ) Εάν δεν περιορίσουμε την λίστα των γνωρισμάτων που θα επιστραφούν, θα επιστραφούν όλα τα γνωρίσματα των επιμέρους σχέσεων που συμμετέχουν στην συνένωση

21 Ερώτηση 10 η :Επιλέξτε όλα τα στοιχεία των πόλεων και των χωρών στις οποίες βρίσκονται SELECT * FROM COUNTRY, CITY WHERE CITY.IDCOUNTRY=COUNTRY.ID_COUNTRY TABLE: COUNTRY x CITY COUNTRY Το γνώρισμα ID_COUTRY της σχέσης COUTRY CITY Εξισώνουμε τα δυο πεδία ID_COUNTRY COUNTRY_NAME ID_CITY CITY_NAME IDCOUNTRY 1 GREECE 1 ATHENS 1 1 GREECE 3 THESSALONIKI 1 2 FINLAND 10 HELSINKI 2 3 FRENCH 4 PARIS 3 3 FRENCH 5 MASSELLIE 3 5 GREAT BRITAIN 2 LONDON 5 6 CYPRUS 6 LEYKOSIA 6 7 RUSSIA 7 MOSCOW 7 7 RUSSIA 8 ST.PETERSBURG 7 7 RUSSIA 9 NOVOROSSISK 7

22 Το προηγούμενο ερώτημα ισοδύναμο με το: SELECT * FROM COUNTRY, CITY WHERE IDCOUNTRY=ID_COUNTRY Τα γνωρίσματα δεν έχουν ακριβώς το ίδιο όνομα.

23 Ερώτηση 11 η :Επιλέξτε το όνομα της πόλης και το όνομα της χώρας στην οποία βρίσκονται SELECT COUNTRY_NAME AS COUNTRY, CITY_NAME AS CITY FROM COUNTRY, CITY WHERE CITY.IDCOUNTRY=COUNTRY.ID_COUNTRY Μετονομάζουμε το COUTRY_NAME σε COUTRY (ΧΡΗΣΗ ΨΕΥΔΩΝΥΜΩΝ) TABLE: COUNTRY x CITY COUNTRY CITY GREECE ATHENS GREECE THESSALONIKI FINLAND HELSINKI FRENCH PARIS FRENCH MASSELLIE GREAT BRITAIN LONDON CYPRUS LEYKOSIA RUSSIA MOSCOW RUSSIA ST.PETERSBURG RUSSIA NOVOROSSISK Μπορούμε να συνενώσουμε και παραπάνω από δύο σχέσεις... Πως?

24 Ερώτηση 12 η :Να προβληθεί το όνομα της κάθε πρεσβείας που βρίσκεται στην πόλη ATHENS και το όνομα της χώρας που αντιπροσωπεύει η πρεσβεία SELECT COUNTRY_NAME AS COUNTRY, EMBASSY_NAME AS EMBASSY, CITY_NAME AS incity FROM COUNTRY AS C1, EMBASSY AS E, CITY AS C2 WHERE C1.ID_COUNTRY=E.COUNTRY_ID AND E.CITY_ID=C2.ID_CITY AND CITY_NAME='ATHENS'; TABLE: COUNTRY x EMBASSY x CITY COUNTRY EMBASSY incity CHINA CHINESE EMBASSY IN ATHENS ATHENS GREAT BRITAIN BRITISH EMBASSY IN ATHENS ATHENS CYPRUS CYPRIAN EMBASSY IN ATHENS ATHENS RUSSIA RUSSIAN EMBASSY IN ATHENS ATHENS Μετονομάζουμε το ΣΧΗΜΑ COUTRY σε C1 Για μεγαλύτερη ευκολία Για πρακτικούς λόγους αναφερόμαστε παραπάνω από μία φορά στον ίδιο πίνακα Αναδρομικές σχέσεις

25 Theta join Παράγει όλους τους συνδυασμούς των εγγραφών από τις σχέσεις R1 και R2 που ικανοποιούν την συνθήκη συνένωσης Η συνθήκη ισότητας δεν είναι αποκλειστικά ισότητα Μπορεί να χρησιμοποιηθεί οποιοσδήποτε από τους παρακάτω τελεστές: <,=,>,>=,<=,<>

26 Ερώτηση 13 η : Να προβληθεί το όνομα κάθε πρεσβευτή με ID>5 σε συνδυασμό με το όνομα κάθε πρεσβείας που βρίσκονται σε οδό με νούμερο (NUM) μικρότερο από τον κωδικό του αντίστοιχου πρεσβευτή SELECT NAME, EMBASSY_NAME AS EMBASSY FROM EMBASSY,AMBASSADOR WHERE ID>num AND ID>5; TABLE: EMBASSY x AMBASSADOR NAME EMBASSY EMMANOUHL CHINESE EMBASSY IN ATHENS ELENH CHINESE EMBASSY IN ATHENS EMMANOUHL BRITISH EMBASSY IN ATHENS ELENH BRITISH EMBASSY IN ATHENS EMMANOUHL FRENCH CONSULATE IN THESSALONIKI ELENH FRENCH CONSULATE IN THESSALONIKI EMMANOUHL GREEK EMBASSY IN MOSCOW ELENH GREEK EMBASSY IN MOSCOW EMMANOUHL GREEK COSULATE IN ST.PETERSBURG ELENH GREEK COSULATE IN ST.PETERSBURG EMMANOUHL GREEK COSULATE IN NOVOROSSISK ELENH GREEK COSULATE IN NOVOROSSISK EMMANOUHL GREEK ENBASSY IN LONDON ELENH GREEK ENBASSY IN LONDON EMMANOUHL RUSSIAN EMBASSY IN LONDON ELENH RUSSIAN EMBASSY IN LONDON EMMANOUHL FRENCH EMBASSY IN LONDON ELENH FRENCH EMBASSY IN LONDON

27 Inner join Ισοδύναμο με το EQUI JOIN Περισσότερο αποδοτική προσέγγιση

28 Ερώτηση 14 η :Επιλέξτε το όνομα της πόλης και το όνομα της χώρας στην οποία βρίσκεται SELECT COUNTRY_NAME AS COUNTRY, CITY_NAME AS CITY FROM COUNTRY INNER JOIN CITY ON CITY.IDCOUNTRY=COUNTRY.ID_COUNTRY TABLE: COUNTRY x CITY COUNTRY CITY GREECE ATHENS GREECE THESSALONIKI FINLAND HELSINKI FRENCH PARIS FRENCH MASSELLIE GREAT BRITAIN LONDON CYPRUS LEYKOSIA RUSSIA MOSCOW RUSSIA ST.PETERSBURG RUSSIA NOVOROSSISK

29 Natural join Φυσική συνένωση Επιστρέφει τις εγγραφές μεταξύ των γνωρισμάτων που έχουν το ίδιο γνώρισμα για τιςοποίεςισχύειησυνθήκηισότητας Το κοινό γνώρισμα (γνώρισμα συνένωσης) επιστρέφεται μία φορά

30 Ερώτηση 15 η :Προβάλετεταστοιχείατων πρεσβευτών και τα στοιχεία των πρεσβειών στην οποία υπηρετεί έκαστος. SELECT * FROM AMBASSADOR NATURAL JOIN EMBASSY Το γνώρισμα συνένωσης εμφανίζεται μόνο μία φορά TABLE: EMBASSY * EMBASSADOR ID_ EMBASSY ID NAME SURNAME EMBASSY _NAME DISTRICT STREET NUM COUNTRY _ID CITY _ID 8 1 NIKOLA OS FOKAS GREEK CONSULATE IN MASELLIE MASELLIE RUE RIGNAN MARIA KOUFOPOULO U GREEK EMBASSY IN MOSCOW MOSCOW LEONTIEFSKI PER IOANNI S KARAVATOS GREEK COSULATE IN ST.PETERSBURG ST.PETERSBUR G IKHAILOVSKAYA ULITSA- HOTEL EUROPE 1/ IOANNI S KOMNINOS GREEK COSULATE IN NOVOROSSISK NOVOROSSISK ICAEVA-HOTEL NOVOROSSISK EMMANO UHL ATHANASIAD IS GREEK ENBASSY IN LONDON W11 HOLLAND PARK 1A 1 2

31 OUTER JOINS Επιστρέφονται και εγγραφές που στο γνώρισμα συνένωσης παίρνουν τιμή Null. LEFT OUTER JOIN: Επιστρέφονται όλες οι εγγραφές του πίνακα «αριστερά» της συνένωσης (έστω Α) και όσες εγγραφές του πίνακα «δεξιά» της συνένωσης (έστω Δ) για τις οποίες ισχύει Α.join_attribute=Δ.join_attribute RIGHT OUTER JOIN: Αντίστοιχα FULL OUTER JOIN: Επιστέφονται όλες οι πλειάδες αριστερά και δεξιά της συνένωσης. Για όσες ισχύει Α.join_attribute=Δ.join_attribute εμφανίζονται στην ίδια πλειάδα

32 Ερώτηση 16 η : Προβάλετε τo όνομα και τον κωδικό όλων των πρεσβευτών καθώς το όνομα της πρεσβείας στην οποία υπηρετεί έκαστος, εφόσον είναι εν ενεργεία SELECT ID,NAME,EMBASSY_NAME FROM AMBASSADOR LEFT OUTER JOIN EMBASSY ON AMBASSADOR.ID_EMBASSY = EMBASSY.ID_EMBASSY TABLE: AMBASSADOR EMBASSY ID NAME EMBASSY_NAME 1 NIKOLAOS GREEK CONSULATE IN MASELLIE 2 MARIA GREEK EMBASSY IN MOSCOW 3 IOANNIS GREEK COSULATE IN ST.PETERSBURG 4 IOANNIS GREEK COSULATE IN NOVOROSSISK 5 GEORGIOS NULL 6 EMMANOUHL GREEK ENBASSY IN LONDON 7 ELENH NULL

33 Ερώτηση 17 η : Προβάλετε τo όνομα της κάθε πρεσβείας και τον κωδικό και το όνομα όλων των πρεσβευτών που υπηρετούν σε αυτή, εφόσον η πληροφορία είναι διαθέσιμη SELECT ID,NAME,EMBASSY_NAME FROM AMBASSADOR RIGHT OUTER JOIN EMBASSY ON AMBASSADOR.ID_EMBASSY = EMBASSY.ID_EMBASSY TABLE: AMBASSADOR EMBASSY ID NAME EMBASSY_NAME NULL NULL CHINESE EMBASSY IN ATHENS NULL NULL BRITISH EMBASSY IN ATHENS NULL NULL CYPRIAN EMBASSY IN ATHENS NULL NULL RUSSIAN EMBASSY IN ATHENS NULL NULL FRENCH CONSULATE IN THESSALONIKI NULL NULL FINLAND CONSULATE IN THESSALONIKI NULL NULL GREEK EMBASSY IN PARIS 1 NIKOLAOS GREEK CONSULATE IN MASELLIE NULL NULL GREEK EMBASSY IN NICOSIA 2 MARIA GREEK EMBASSY IN MOSCOW 3 IOANNIS GREEK COSULATE IN ST.PETERSBURG 4 IOANNIS GREEK COSULATE IN NOVOROSSISK 6 EMMANOUHL GREEK ENBASSY IN LONDON NULL NULL BRITISH EMBASSY IN MOSCOW NULL NULL BRITISH EMBASSY IN HELSINKI NULL NULL RUSSIAN EMBASSY IN LONDON NULL NULL CHINESE EMBASSY IN LONDON NULL NULL FINLAND EMBASSY IN LONDON NULL NULL FRENCH EMBASSY IN LONDON

34 Πράξεις Συνόλων Οι πράξεις συνόλων ένωση (union), τομή (intersect), και διαφορά (except) Εφαρμόζονται σε σχέσεις που έχουν το ίδιο πλήθος γνωρισμάτων και τα αντίστοιχα γνωρίσματα τους, έχουν το ίδιο πεδίο ορισμού. Αντιστοιχούν στις πράξεις της σχεσιακής άλγεβρας,,. Κάθε μία από τις παραπάνω πράξεις εξαλείφει αυτόματα τις διπλότυπες εγγραφές. Για να επιστραφούν όλες οι εγγραφές θα πρέπει να χρησιμοποιηθούν οι αντίστοιχες multiset εκδόσεις των προηγούμενων πράξεων union all, intersect all και except all. Υποθέστε ότι μια πλειάδα εμφανίζεται m φορές σε μία σχέση r και n φορές σε μία σχέση s, τότε εμφανίζεται: m + n φορές στην σχέση r union all s min(m,n) φορές στην σχέση r intersect all s max(0, m n) φορές στην σχέση r except all s

35 Ερώτηση 18 η : Προβάλετε τo όνομα και τον κωδικό όλων των πρεσβευτών της Κίνας και της Ρωσίας (SELECT ID_EMBASSY,EMBASSY_NAME FROM EMBASSY AS E INNER JOIN COUNTRY AS C ON E.COUNTRY_ID=C.ID_COUNTRY WHERE COUNTRY_NAME= RUSSIA ) UNION (SELECT ID_EMBASSY,EMBASSY_NAME FROM EMBASSY AS E INNER JOIN COUNTRY AS C ON E.COUNTRY_ID=C.ID_COUNTRY WHERE COUNTRY_NAME= CHINA ) TABLE: EMBASSY ID_EMBASSY EMBASSY_NAME 4 RUSSIAN EMBASSY IN ATHENS 16 RUSSIAN EMBASSY IN LONDON 1 CHINESE EMBASSY IN ATHENS 17 CHINESE EMBASSY IN LONDON

36 Ερώτηση 19 η : Προβάλετε τα ονόματα των χωρών οι οποίες διατηρούν πρεσβείες στην Ελλάδα και στην Μεγάλη Βρετανία (SELECT FOREIGN_C.COUNTRY_NAME FROM COUNTRY AS FOREIGN_C INNER JOIN EMBASSY AS E ON E.COUNTRY_ID=FOREIGN_C.ID_COUNTRY INNER JOIN CITY AS C2 ON E.CITY_ID=C2.ID_CITY INNER JOIN COUNTRY AS HOSTING_C ON HOSTING_C.ID_COUNTRY=C2.IDCOUNTRY WHERE HOSTING_C.COUNTRY_NAME= 'GREECE') INTERSECT (SELECT FOREIGN_C.COUNTRY_NAME FROM COUNTRY AS FOREIGN_C INNER JOIN EMBASSY AS E ON E.COUNTRY_ID=FOREIGN_C.ID_COUNTRY INNER JOIN CITY AS C2 ON E.CITY_ID=C2.ID_CITY INNER JOIN COUNTRY AS HOSTING_C ON HOSTING_C.ID_COUNTRY=C2.IDCOUNTRY WHERE HOSTING_C.COUNTRY_NAME= GREAT BRITAIN') TABLE: FOREIGN_C EMBASSY CITY HOSTING_C Δημιουργούμε δύο στιγμιότυπα της ίδιας σχέσης COUNTRY_NAME FINLAND FRENCH CHINA RUSSIA

37 Ερώτηση 20 η : Προβάλετε τα ονόματα των χωρών οι οποίες διατηρούν πρεσβείες στην Ελλάδα αλλά όχι στην Μεγάλη Βρετανία (SELECT FOREIGN_C.COUNTRY_NAME FROM COUNTRY AS FOREIGN_C INNER JOIN EMBASSY AS E ON E.COUNTRY_ID=FOREIGN_C.ID_COUNTRY INNER JOIN CITY AS C2 ON E.CITY_ID=C2.ID_CITY INNER JOIN COUNTRY AS HOSTING_C ON HOSTING_C.ID_COUNTRY=C2.IDCOUNTRY WHERE HOSTING_C.COUNTRY_NAME= 'GREECE') EXCEPT (SELECT FOREIGN_C.COUNTRY_NAME FROM COUNTRY AS FOREIGN_C INNER JOIN EMBASSY AS E ON E.COUNTRY_ID=FOREIGN_C.ID_COUNTRY INNER JOIN CITY AS C2 ON E.CITY_ID=C2.ID_CITY INNER JOIN COUNTRY AS HOSTING_C ON HOSTING_C.ID_COUNTRY=C2.IDCOUNTRY WHERE HOSTING_C.COUNTRY_NAME= GREAT BRITAIN') TABLE: FOREIGN_C EMBASSY CITY HOSTING_C COUNTRY_NAME GREAT BRITAIN CYPRUS

38 Συναθροιστικές Συναρτήσεις Οι συγκεκριμένες συναρτήσεις εφαρμόζονται σε γνωρίσματα σχέσεων και επιστρέφουν μία τιμή Παραδείγματα τέτοιων συναρτήσεων avg: μέσος όρος min: minimum value ελάχιστη τιμή max: maximum value μέγιστη τιμή sum: άθροισμα τιμών count: καταμέτρηση εγγραφών Όλες οι συναθροιστικές συναρτήσεις αγνοούν τις πλειάδες με null τιμές στα γνωρίσματα στα οποία εφαρμόζονται εκτός της count(*) Δεν μπορεί να χρησιμοποιηθούν σύνθετες συναθροιστικές συναρτήσεις στην SQL. Πχ max(avg( ))

39 Ερώτηση 21 η : Να βρεθεί το πλήθος των πρεσβειών που είναι καταγεγραμμένες στην βάση SELECT count(*) AS Plithos FROM EMBASSY Εφαρμόζουμε μετονομασία TABLE: EMBASSY PLITHOS 19

40 Ερώτηση 22 η : Να βρεθεί το πλήθος των διακριτών περιοχών που φιλοξενούνται πρεσβείες SELECT count(distinct district) AS Plithos FROM EMBASSY Επιστρέφει μόνο τις διακριτές τιμές TABLE: EMBASSY PLITHOS 16 SELECT count(district) AS Plithos FROM EMBASSY TABLE: EMBASSY PLITHOS 19

41 Εντολή ομαδοποίησης Group By Ομαδοποιεί τις εγγραφές με βάση ένα ή περισσότερα γνωρίσματα Για να εφαρμόσουμε τις συναθροιστικές συναρτήσεις όχι μόνο σε πλειάδες αλλά και σε υπο-σύνολα πλειάδων μιας σχέσης χρησιμοποιούμε το group by Δηλαδή, ομαδοποιούμε τις πλειάδες που έχουν την ίδια τιμή για κάποια γνωρίσματα και εφαρμόζουμε τη συναθροιστική συνάρτηση σε κάθε ομάδα ανεξάρτητα Σημ: Τα γνωρίσματα που εμφανίζονται σε μία δήλωση select και δεν εφαρμόζεται σε αυτά μία συναθροιστική συνάρτηση θα πρέπει να περιλαμβάνονται στην λίστα των γνωρισμάτων ομαδοποίησης

42 Ερώτηση 23 η : Να προβληθεί το όνομα κάθε χώρας και το αντίστοιχο πλήθος των πρεσβειών που διατηρεί η χώρα στο εξωτερικό SELECT FOREIGN_C.COUNTRY_NAME,COUNT(*) AS PLITHOS FROM COUNTRY AS FOREIGN_C INNER JOIN EMBASSY AS E ON E.COUNTRY_ID=FOREIGN_C.ID_COUNTRY INNER JOIN CITY AS C2 ON E.CITY_ID=C2.ID_CITY INNER JOIN COUNTRY AS HOSTING_C ON HOSTING_C.ID_COUNTRY=C2.IDCOUNTRY GROUP BY FOREIGN_C.ID_COUNTRY; TABLE: FOREIGN_C EMBASSY CITY HOSTING_C Ομαδοποιούμε τις εγγραφές με βάση των κωδικό της χώρας που διατηρεί πρεσβεία στο εξωτερικό COUNTRY_NAME PLITHOS GREECE 7 FINLAND 2 FRENCH 2 CHINA 2 GREAT BRITAIN 3 CYPRUS 1 RUSSIA 2

43 Having Μας επιτρέπει να επιστρέψουμε πλειάδες οι οποίες ικανοποιούν κάποιο κριτήριο εάν εφαρμοστεί σε αυτές μία συναθροιστική συνάρτηση. Having avg(price)<10 Having count(id) between 2 and 4 Having max(grade) < 15 Είναι δυνατό να έχουμε στην ίδια εντολή select ταυτόχρονα και δήλωση where και δήλωση having Η εφαρμογή των κριτηρίων που επιφέρει η δήλωση Having εφαρμόζεται στις εγγραφές μετά την ομαδοποίηση ενώ η εφαρμογή των κριτηρίων που επιφέρει η δήλωση where εφαρμόζεται πριν την ομαδοποίηση

44 Ερώτηση 24 η : Να προβληθεί το όνομα κάθε χώρας που διατηρεί περισσότερες από 2 πρεσβείες στο εξωτερικό και το αντίστοιχο πλήθος των πρεσβειών SELECT FOREIGN_C.COUNTRY_NAME,COUNT(*) AS PLITHOS FROM COUNTRY AS FOREIGN_C INNER JOIN EMBASSY AS E ON E.COUNTRY_ID=FOREIGN_C.ID_COUNTRY INNER JOIN CITY AS C2 ON E.CITY_ID=C2.ID_CITY INNER JOIN COUNTRY AS HOSTING_C ON HOSTING_C.ID_COUNTRY=C2.IDCOUNTRY GROUP BY FOREIGN_C.ID_COUNTRY HAVING COUNT(FOREIGN_C.ID_COUNTRY)>2; Εφαρμόζουμε την συνθήκη Having προκειμένου να επιλέξουμε μόνο τις εγγραφές με τις επιθυμητές ιδιότητες TABLE: FOREIGN_C EMBASSY CITY HOSTING_C COUNTRY_NAME PLITHOS GREECE 7 GREAT BRITAIN 3

45 Ερώτηση 25 η : Να προβληθεί το όνομα της χώρας GREECE και το αντίστοιχο πλήθος των πρεσβειών που διατηρεί η χώρα στο εξωτερικό SELECT FOREIGN_C.COUNTRY_NAME,COUNT(*) AS PLITHOS FROM COUNTRY AS FOREIGN_C INNER JOIN EMBASSY AS E ON E.COUNTRY_ID=FOREIGN_C.ID_COUNTRY INNER JOIN CITY AS C2 ON E.CITY_ID=C2.ID_CITY INNER JOIN COUNTRY AS HOSTING_C ON HOSTING_C.ID_COUNTRY=C2.IDCOUNTRY WHERE FOREIGN_C.COUNTRY_NAME LIKE GREECE GROUP BY FOREIGN_C.ID_COUNTRY; Επιλέγουμε μόνο τις εγγραφές για τις οποίες το Country_name είναι GREECE TABLE: FOREIGN_C EMBASSY CITY HOSTING_C COUNTRY_NAME PLITHOS GREECE 7

46 Views-Όψεις Παρέχουν έναν μηχανισμό απόκρυψης συγκεκριμένων δεδομένων από συγκεκριμένους χρήστες δημιουργώντας έναν μόνιμο, εικονικό πίνακα Παρέχουν ασφάλεια το σχήμα βάσης αποκρύπτεται Μπορούν να βελτιώσουν την απόδοση της βάσης Συχνά χρησιμοποιούμενα ερωτήματα που περιλαμβάνουν συνενώσεις υπολογίζονται μία φορά χρησιμοποιούνται πολλές Εντολή δημιουργίας όψεων: Όπου: create view v as <query expression> <query expression> κάθε νόμιμη έκφραση v: το όνομα που δίνουμε στην όψη

47 Ερώτηση 26 η : Προβάλετε τo όνομα και τον κωδικό όλων των πρεσβευτών της Κίνας και της Ρωσίας ίδιο με το ερώτημα 18 (SELECT ID_EMBASSY,EMBASSY_NAME FROM EMBASSY_COUNTRY WHERE COUNTRY_NAME= RUSSIA ) UNION ((SELECT ID_EMBASSY,EMBASSY_NAME FROM EMBASSY_COUNTRY WHERE COUNTRY_NAME= CHINA ) TABLE: EMBASSY ID_EMBASSY EMBASSY_NAME 4 RUSSIAN EMBASSY IN ATHENS 16 RUSSIAN EMBASSY IN LONDON 1 CHINESE EMBASSY IN ATHENS 17 CHINESE EMBASSY IN LONDON

48 Ερώτηση 26 η Χρησιμοποιούμε δύο φορές το υποερώτημα: SELECT ID_EMBASSY,EMBASSY_NAME FROM EMBASSY AS E INNER JOIN COUNTRY AS C ON E.COUNTRY_ID=C.ID_COUNTRY Θα ορίσουμε την αντίστοιχη όψη: CREATE VIEW EMBASSY_COUNTRY AS SELECT ID_EMBASSY,EMBASSY_NAME FROM EMBASSY AS E INNER JOIN COUNTRY AS C ON E.COUNTRY_ID=C.ID_COUNTRY

49 Εμφωλευμένες Επερωτήσεις Ένα υπο-ερώτημα είναι μια παράσταση select-from where που είναι ένθετο μέσα σε ένα άλλο ερώτημα. Μπορούμε να εμφωλεύσουμε παραπάνω από ένα ερωτήματα Τελεστές : in : ελέγχει την ύπαρξη μιας εγγραφής σε μία σχέση not in : ελέγχει την μη ύπαρξη μιας εγγραφής σε μία σχέση συγκρίνουν μια τιμή με ένα σύνολο τιμών

50 Εμφωλευμένες Επερωτήσεις Δομή ερωτήσεων: SELECT a1,,an FROM TABLE_A where ai OPERATOR (SELECT bi FROM TABLE_B [WHERE }) Όπου OPERATOR : In Not in

51 Ερώτηση 27 η :Επιλέξτε το όνομα των πρεσβειών που βρίσκονται στην χώρα GREECE SELECT EMBASSY_NAME FROM EMBASSY WHERE CITY_ID IN (SELECT ID_CITY FROM CITY WHERE IDCOUNTRY IN (SELECT ID_COUNTRY FROM COUNTRY WHERE COUNTRY_NAME = GREECE ) ) TABLE: CITY ID_CITY 1 3 TABLE: EMBASSY EMBASSY CHINESE EMBASSY IN ATHENS BRITISH EMBASSY IN ATHENS CYPRIAN EMBASSY IN ATHENS RUSSIAN EMBASSY IN ATHENS FRENCH CONSULATE IN THESSALONIKI FINLAND CONSULATE IN THESSALONIKI TABLE: COUNTRY ID_COUNTRY 1

52 Ερώτηση 28 η :Επιλέξτε το όνομα των πρεσβειώνπουδενβρίσκονταιστηνχώρα GREECE SELECT EMBASSY_NAME FROM EMBASSY WHERE CITY_ID IN (SELECT ID_CITY FROM CITY WHERE IDCOUNTRY NOT IN (SELECT ID_COUNTRY FROM COUNTRY WHERE COUNTRY_NAME = GREECE ) ) TABLE: EMBASSY EMBASSY GREEK EMBASSY IN PARIS GREEK CONSULATE IN MASELLIE GREEK EMBASSY IN NICOSIA GREEK EMBASSY IN MOSCOW GREEK COSULATE IN ST.PETERSBURG GREEK COSULATE IN NOVOROSSISK GREEK ENBASSY IN LONDON BRITISH EMBASSY IN MOSCOW BRITISH EMBASSY IN HELSINKI RUSSIAN EMBASSY IN LONDON CHINESE EMBASSY IN LONDON FINLAND EMBASSY IN LONDON FRENCH EMBASSY IN LONDON

53 Σύγκριση Συνόλων Τελεστές: >all : μεγαλύτερο απ όλα, <>all διαφορετικό από όλα <>all ισοδύναμο με το not in >some : μεγαλύτερο από τουλάχιστον ένα, >= some : μεγαλύτερο ίσο από τουλάχιστον ένα = some Τουλάχιστον ένα ισοδύναμο με το in any : ισοδύναμη με την some στην SQL

54 Ερώτηση 29 η : Να προβληθεί το όνομα της πόλης που φιλοξενεί τις περισσότερες πρεσβείες απ όλες SELECT CITY_NAME FROM EMBASSY INNER JOIN CITY ON CITY_ID=ID_CITY GROUP BY ID_CITY HAVING COUNT(ID_EMBASSY) >= all (SELECT COUNT(ID_EMBASSY) FROM EMBASSY INNER JOIN CITY ON CITY_ID=ID_CITY GROUP BY ID_CITY); TABLE: CITY CITY_NAME LONDON

55 Έλεγχος για κενές σχέσεις Ηδομή Exists: επιστρέφει true αν το όρισμα του υπο-ερωτήματος δεν είναι κενό. Not exists: επιστρέφει true αν το όρισμα του υποερωτήματος είναι κενό. Δομή ερωτήματος: SELECT a1,,an FROM TABLE_A WHERE EXISTS (SELECT a1,,an FROM TABLE_B [WHERE ])

56 SQL Quick Reference from W3Schools

57 SQL Quick Reference from W3Schools STATEMENT AND / OR ALTER TABLE (add column) ALTER TABLE (drop column) AS (alias for column) AS (alias for table) BETWEEN CREATE DATABASE CREATE INDEX SELECT column_name(s) FROM table_name WHERE condition AND OR condition ALTER TABLE table_name ADD column_name datatype ALTER TABLE table_name DROP COLUMN column_name SYNTAX SELECT column_name AS column_alias FROM table_name SELECT column_name FROM table_name AS table_alias SELECT column_name(s) FROM table_name WHERE column_name BETWEEN value1 AND value2 CREATE DATABASE database_name CREATE INDEX index_name ON table_name (column_name)

58 SQL Quick Reference from W3Schools STATEMENT CREATE TABLE CREATE UNIQUE INDEX CREATE VIEW DELETE FROM DROP DATABASE DROP INDEX CREATE TABLE table_name ( column_name1 data_type, column_name2 data_type,... ) CREATE UNIQUE INDEX index_name ON table_name (column_name) CREATE VIEW view_name AS SELECT column_name(s) FROM table_name WHERE condition SYNTAX DELETE FROM table_name (Note: Deletes the entire table!!) or DELETE FROM table_name WHERE condition DROP DATABASE database_name DROP INDEX table_name.index_name

59 SQL Quick Reference from W3Schools DROP TABLE GROUP BY HAVING IN INSERT INTO STATEMENT DROP TABLE table_name SYNTAX SELECT column_name1,sum(column_name2) FROM table_name GROUP BY column_name1 SELECT column_name1,sum(column_name2) FROM table_name GROUP BY column_name1 HAVING SUM(column_name2) condition value SELECT column_name(s) FROM table_name WHERE column_name IN (value1,value2,..) INSERT INTO table_name VALUES (value1, value2,...) or INSERT INTO table_name (column_name1, column_name2,...) VALUES (value1, value2,...) LIKE SELECT column_name(s) FROM table_name WHERE column_name LIKE pattern

60 SQL Quick Reference from W3Schools ORDER BY SELECT STATEMENT SYNTAX SELECT column_name(s) FROM table_name ORDER BY column_name [ASC DESC] SELECT column_name(s) FROM table_name SELECT * SELECT * FROM table_name SELECT DISTINCT SELECT INTO (used to create backup copies of tables) SELECT DISTINCT column_name(s) FROM table_name SELECT * INTO new_table_name FROM original_table_name or SELECT column_name(s) INTO new_table_name FROM original_table_name

61 SQL Quick Reference from W3Schools STATEMENT TRUNCATE TABLE (deletes only the data inside the table) UPDATE WHERE TRUNCATE TABLE table_name UPDATE table_name SET column_name=new_value [, column_name=new_value] WHERE column_name=some_value SELECT column_name(s) FROM table_name WHERE condition SYNTAX

62 Ερωτήσεις... Ευχαριστώ!!!

Βάζεηο Γεδνκέλσλ. Structured Query Language -SQL. Φξνληηζηήξην 5 ν 08-12-2010

Βάζεηο Γεδνκέλσλ. Structured Query Language -SQL. Φξνληηζηήξην 5 ν 08-12-2010 Βάζεηο Γεδνκέλσλ Structured Query Language -SQL Φξνληηζηήξην 5 ν 08-12-2010 Η Γιώζζα SQL Σα βαζηθά ηεο ζπζηαηηθά: Γιώζζα Οξηζκνύ Γεδνκέλσλ (Data Definition Language (DDL)) Οξηζκόο, δεκηνπξγία, ηξνπνπνίεζε

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

Βάζεηο Γεδνκέλσλ. Structured Query Language -SQL. Φξνληηζηήξην 9 ν 01-12-2011

Βάζεηο Γεδνκέλσλ. Structured Query Language -SQL. Φξνληηζηήξην 9 ν 01-12-2011 Βάζεηο Γεδνκέλσλ Structured Query Language -SQL Φξνληηζηήξην 9 ν 01-12-2011 Η Γιώζζα SQL Σα βαζηθά ηεο ζπζηαηηθά: Γιώζζα Οξηζκνύ Γεδνκέλσλ (Data Definition Language (DDL)) Οξηζκόο, δεκηνπξγία, ηξνπνπνίεζε

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

SQL Data Manipulation Language

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Εισαγωγή στην πληροφορική

Εισαγωγή στην πληροφορική Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Εισαγωγή στην πληροφορική Ενότητα 6: Εισαγωγή στις βάσεις δεδομένων (Μέρος Β) Αγγελίδης Παντελής Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Άδειες Χρήσης

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. Βάσεις Δεδομένων (4 ο εξάμηνο) Εργαστήριο MySQL #3

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. Βάσεις Δεδομένων (4 ο εξάμηνο) Εργαστήριο MySQL #3 ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ Βάσεις Δεδομένων (4 ο εξάμηνο) Εργαστήριο MySQL #3 Διδάσκων: Γιάννης Θεοδωρίδης Συντάκτης Κειμένου: Βαγγέλης Κατσικάρος Φεβρουάριος 2008 Περιεχόμενα ξένα κλειδιά

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

ΘΕΜΑΤΑ. Ερώτηση 1 Κατά τη Φυσική Αποθήκευση (Physical storage) μιας ΒΔ αποθηκεύονται στον δίσκο τα:

ΘΕΜΑΤΑ. Ερώτηση 1 Κατά τη Φυσική Αποθήκευση (Physical storage) μιας ΒΔ αποθηκεύονται στον δίσκο τα: ΘΕΜΑΤΑ Θέμα 1 ο Σε μία βάση δεδομένων χρηματιστηριακών συναλλαγών υπάρχουν οι παρακάτω πίνακες που αποτελούνται από τα εξής πεδία : : ΚΣ, ΗΜΝΙΑ, ΩΡΑ, ΚΜ, ΤΙΜΗ ΜΕΤΟΧΗ : ΚΜ, ΟΝΟΜΑ, ΕΤΟΣ_ΙΔΡΥΣΗΣ, ΚΚ, ΚΑΤΗΓΟΡΙΑ

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

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

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

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

1. ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ ΤΗΣ MySQL

1. ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ ΤΗΣ MySQL 1. ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ ΤΗΣ MySQL Τύποι στην MySQL Κείμενο Αριθμοί Ημερομηνίες και ώρες Επιλογή του τύπου Στήλες ονομάτων τύπος κειμένου Στήλες ποσών ή ποσοτήτων Αριθμητικός τύπος Στήλες ημερομηνιών τύπος ημερομηνίας

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. Βάσεις Δεδομένων (4 ο εξάμηνο) Εργαστήριο MySQL #6

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. Βάσεις Δεδομένων (4 ο εξάμηνο) Εργαστήριο MySQL #6 ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ Βάσεις Δεδομένων (4 ο εξάμηνο) Εργαστήριο MySQL #6 Διδάσκων: Γιάννης Θεοδωρίδης Συντάκτης Κειμένου: Βαγγέλης Κατσικάρος Φεβρουάριος 2008 Περιεχόμενα JOIN συνέχεια

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

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

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

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

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

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

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

Σχεδίαση Βάσεων Δεδομένων

Σχεδίαση Βάσεων Δεδομένων Οδηγίες Μέρος 1: Απαντήστε κάθε ερώτηση. 1. Ποια είναι τα πλεονεκτήματα που παρέχει το Περιβάλλον Βάσεων Δεδομένων της Oracle για τις επιχειρήσεις; Το σύστημα διαχείρισης βάσεων δεδομένων της Oracle δίνει

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

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

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

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

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

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

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

Βάσεις Δεδομένων Σύνθετα 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) Δομημένη Γλώσσα Ερωτήσεων SQL DML Σχεσιακοί Τελεστές Τελεστές Συνόλων Ανάκτηση με NULLs Συνδέσεις-Συνενώσεις

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

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

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

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

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

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

Lecture 16: SQL DML III

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

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

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

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

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

Lecture 14: SQL DML I

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

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

ΕΝΗΜΕΡΩΣΗ ΔΕΔΟΜΕΝΩΝ. UPDATE products SET prod_fpa=19 WHERE prod_fpa=23; SELECT prod_descr,purchase,purchase_date FROM products WHERE prod_fpa=9;

ΕΝΗΜΕΡΩΣΗ ΔΕΔΟΜΕΝΩΝ. UPDATE products SET prod_fpa=19 WHERE prod_fpa=23; SELECT prod_descr,purchase,purchase_date FROM products WHERE prod_fpa=9; ΕΝΗΜΕΡΩΣΗ ΔΕΔΟΜΕΝΩΝ 4.10 Επαναφέρετε πάλι το είδος 20 (όλο το στιγμιότυπο) στον πίνακα products με τις εντολές INSERT INTO. 4.11 Διαγράψτε το είδος 12 (όλο το στιγμιότυπο) στον πίνακα products και επαναφέρετε

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

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

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

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

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

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

DELETE, UPDATE, INSERT

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

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

Τεχνολογία Πολιτισμικού Λογισμικού

Τεχνολογία Πολιτισμικού Λογισμικού Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων Τεχνολογία Πολιτισμικού Λογισμικού Ενότητα 10: Γλώσσα Ερωτημάτων SQL Το περιεχόμενο του μαθήματος διατίθεται με άδεια Creative Commons εκτός και αν αναφέρεται

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

DELETE, UPDATE, INSERT.

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

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

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

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

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

Η Γλώσσα Βάσεων εδοµένων SQL

Η Γλώσσα Βάσεων εδοµένων SQL Η Γλώσσα Βάσεων εδοµένων SQL 1 Η γλώσσα SQL Η SQL (Structured Query Language - οµηµένη Γλώσσα Ερωτηµάτων) είναι η καθιερωµένη σχεσιακή γλώσσα βάσεων δεδοµένων. Υλοποιήθηκε από την IBM στα πλαίσια του ερευνητικού

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

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

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

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

Βάσεις Δεδομένων Ι [Σημειώσεις Εργαστηρίου]

Βάσεις Δεδομένων Ι [Σημειώσεις Εργαστηρίου] ΤΕΙ Ηπείρου Τμήμα Μηχανικών Πληροφορικής Τ.Ε. Βάσεις Δεδομένων Ι [Σημειώσεις Εργαστηρίου] Επιμέλεια: Καρβούνης Ευάγγελος, PhD, Επιστημονικός Συνεργάτης του Τμήματος Αντωνιάδης Νικόλαος, Καθηγητής Οκτώβριος

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

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

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

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

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

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

Query-by-Example (QBE)

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

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

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

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

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

Εργαστήριο βάσεων δεδομένων. Εισαγωγή στη MySQL (2)

Εργαστήριο βάσεων δεδομένων. Εισαγωγή στη MySQL (2) Εργαστήριο βάσεων δεδομένων Εισαγωγή στη MySQL (2) Παράδειγμα - ER Παράδειγμα-Σχεσιακό Παράδειγμα Δημιουργία Πινάκων CREATE TABLE student( name VARCHAR(25) DEFAULT 'unknown' NOT NULL, lastnamevarchar(25)

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

Βάσεις Δεδομένων Ι [Σημειώσεις Εργαστηρίου]

Βάσεις Δεδομένων Ι [Σημειώσεις Εργαστηρίου] ΤΕΙ ΔΥΤΙΚΗΣ ΜΑΚΕΔΟΝΙΑΣ Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Βάσεις Δεδομένων Ι [Σημειώσεις Εργαστηρίου] Χειμερινό Εξ. 2013-14 Επιμέλεια: Καρβούνης Ευάγγελος Οκτώβριος 2013 Περιεχόμενα 1 Σχεδιασμός Βάσης...

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

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

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

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

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

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

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

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

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

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

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

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

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

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι Ενότητα 3:

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

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

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

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

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

ΕΠΛ 003: ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ. Βάσεις Δεδομένων

ΕΠΛ 003: ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ. Βάσεις Δεδομένων ΕΠΛ 003: ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ Βάσεις Δεδομένων Υπολογιστικά συστήματα: Στρώματα 1 επικοινωνία εφαρμογές λειτουργικό σύστημα προγράμματα υλικό δεδομένα Βάσεις Δεδομένων 2

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

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

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

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

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

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

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

Εργαστήριο βάσεων δεδομένων. Εισαγωγή στη MySQL (2)

Εργαστήριο βάσεων δεδομένων. Εισαγωγή στη MySQL (2) Εργαστήριο βάσεων δεδομένων Εισαγωγή στη MySQL (2) Παράδειγμα -ER Παράδειγμα-Σχεσιακό Παράδειγμα Δημιουργία Πινάκων CREATE TABLE student( name VARCHAR(25) DEFAULT 'unknown' NOT NULL, lastname VARCHAR(25)

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

Βάσεις Δεδομένων 5η εργαστηριακή άσκηση

Βάσεις Δεδομένων 5η εργαστηριακή άσκηση Βάσεις Δεδομένων 5η εργαστηριακή άσκηση SQL Δρ. Μαρία Ευθυμιοπούλου Εντολές sql Για να γράψετε ή να επικολλήσετε εντολές sql πηγαίνετε από το μενού SQL Workshop και επιλέγετε το SQL Commands 1. Δημιουργία

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