Βαςεις δεδομενων 1. Δρ. Aλεξανδροσ Βακαλουδθσ

Σχετικά έγγραφα
Βαςεις δεδομενων 1. Δρ. Αλζξανδροσ Βακαλουδθσ

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

Βαςεις δεδομενων 1. Δρ. Aλεξανδροσ Βακαλουδθσ

Βάςεισ Δεδομζνων Ι. Ενότθτα 10: Συνακροιςτικζσ ςυναρτιςεισ. Δρ. Σςιμπίρθσ Αλκιβιάδθσ Σμιμα Μθχανικών Πλθροφορικισ ΣΕ

Βάςεισ Δεδομζνων Λ. Ενότθτα 8: SQL Γλώςςα χειριςμοφ δεδομζνων. Δρ. Σςιμπίρθσ Αλκιβιάδθσ Σμιμα Μθχανικών Πλθροφορικισ ΣΕ

ΕΦΑΡΜΟΓΕ ΒΑΕΩΝ ΔΕΔΟΜΕΝΩΝ ΣΗ ΝΟΗΛΕΤΣΙΚΗ. Φιλιοποφλου Ειρινθ

Βάςεισ Δεδομζνων Ι. Ενότθτα 9: SQL-φηευξθ πινάκων. Δρ. Σςιμπίρθσ Αλκιβιάδθσ Σμιμα Μθχανικών Πλθροφορικισ ΣΕ

Βάςεισ Δεδομζνων Ι. Ενότητα 7: Ειςαγωγή ςτην γλώςςα_sql. Δρ. Σςιμπίρθσ Αλκιβιάδθσ Σμιμα Μθχανικϊν Πλθροφορικισ ΣΕ

Βάρειπ Δεδξμέμωμ. Επγαστήπιο ΙΙ. Τμήμα Πλεπουοπικήρ ΑΠΘ

ΟΝΟΜΑΣΟΛΟΓΙΑ ΠΑΡΑΜΕΣΡΩΝ ΓΙΑ ΠΡΟΑΡΜΟΜΕΝΕ ΑΝΑΦΟΡΕ. παραμζτρου> (Εμφανίηεται ςαν Caption ςτθν φόρμα των φίλτρων).

Ειδικά Θζματα Βάςεων Δεδομζνων

Περιοριςμοί μιασ Β.Δ. ςτθν Access(1/3)

Δείκτεσ Διαχείριςθ Μνιμθσ. Βαγγζλθσ Οικονόμου Διάλεξθ 8

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

17. Πολυδιάςτατοι πίνακεσ

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

Α) Ενδεικτικϋσ απαντόςεισ των θεμϊτων

Βάςεισ Δεδομζνων Ι. Ενότθτα 11: SQL-Ερωτιματα Ομαδοποίθςθσ με υνζνωςθ Πινάκων. Δρ. Σςιμπίρθσ Αλκιβιάδθσ Σμιμα Μθχανικϊν Πλθροφορικισ ΣΕ

Βάςεισ Δεδομζνων Ι. Ενότητα 4: Μετατροπή ςχήματοσ Ο/Σ ςε ςχεςιακό. Δρ. Τςιμπίρθσ Αλκιβιάδθσ Τμιμα Μθχανικϊν Ρλθροφορικισ ΤΕ

ΛΕΙΤΟΥΓΙΚΆ ΣΥΣΤΉΜΑΤΑ. 5 ο Εργαςτιριο Ειςαγωγι ςτθ Γραμμι Εντολϊν

ΡΟΓΑΜΜΑΤΙΣΤΙΚΟ ΡΕΙΒΑΛΛΟΝ MICRO WORLDS PRO

Βάςεισ Δεδομζνων Ι. Ενότητα 12: Κανονικοποίηςη. Δρ. Τςιμπίρθσ Αλκιβιάδθσ Τμιμα Μθχανικών Πλθροφορικισ ΤΕ

ΕΦΑΡΜΟΓΕ ΒΑΕΩΝ ΔΕΔΟΜΕΝΩΝ ΚΑΙ ΔΙΑΔΙΚΣΤΟΤ. Φιλιοποφλου Ειρινθ

Πρόςβαςη και δήλωςη μαθημάτων ςτον Εφδοξο

ΕΦΑΡΜΟΓΖσ ΒΆΕΩΝ ΔΕΔΟΜΖΝΩΝ ΚΑΙ ΔΙΑΔΙΚΣΥΟΤ. Ειρινθ Φιλιοποφλου

Εφδοξοσ+ Συνδεκείτε ςτθν Εφαρμογι Φοιτθτϊν και μεταβείτε ςτθ ςελίδα «Ανταλλαγι Βιβλίων (Εφδοξοσ+)».

ΠΡΟΓΡΑΜΜΑΣΙΜΌ ΤΠΟΛΟΓΙΣΏΝ. Κεφάλαιο 8 Η γλϊςςα Pascal

Ιδιότθτεσ πεδίων Γενικζσ.

Οδηγίεσ προσ τουσ εκπαιδευτικοφσ για το μοντζλο του Άβακα

Ειδικά Θζματα Βάςεων Δεδομζνων

1. Κατέβαςμα του VirtueMart

ΕΝΟΤΗΤΑ 2: ΕΠΙΚΟΙΝΩΝΩ ΜΕ ΤΟΝ ΥΠΟΛΟΓΙΣΤΗ. ΚΕΦΑΛΑΙΟ 5: Αρχεία - Φάκελοι

Ραραμετροποίθςθ ειςαγωγισ δεδομζνων περιόδων

Ηλεκτρονικι Επιχειρθςιακι Δράςθ Εργαςτιριο 1

Ανάπτυξη Εφαρμογών με Σχεςιακέσ Βάςεισ Δεδομένων

assessment.gr USER S MANUAL (users)

ΕΝΟΤΗΤΑ 2: ΤΟ ΛΟΓΙΣΜΙΚΟ ΤΟΥ ΥΠΟΛΟΓΙΣΤΗ. ΚΕΦΑΛΑΙΟ 5: Γνωριμία με το λογιςμικό του υπολογιςτι

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

GNSS Solutions guide. 1. Create new Project

Διαχείριςθ του φακζλου "public_html" ςτο ΠΣΔ

Ανάπτυξη Εφαρμογών Σε Προγραμματιςτικό Περιβάλλον

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

ΕΝΟΣΗΣΑ 1: ΓΝΩΡIΖΩ ΣΟΝ ΤΠΟΛΟΓΙΣΗ. ΚΕΦΑΛΑΙΟ 2: Σο Τλικό του Τπολογιςτι

1. Εγκατάςταςη κειμενογράφου JCE

ΗΛΕΚΣΡΟΝΙΚΗ ΤΠΗΡΕΙΑ ΑΠΟΚΣΗΗ ΑΚΑΔΗΜΑΪΚΗ ΣΑΤΣΟΣΗΣΑ

Εισαγωγικές έννοιες. Αντώνησ Κ Μαώργιώτησ

Πωσ δημιουργώ μάθημα ςτο e-class του ΠΣΔ [επίπεδο 1]

ΘΥ101: Ειςαγωγι ςτθν Πλθροφορικι

Joomla! - User Guide

Ειςαγωγι ςτθν Επιςτιμθ Υπολογιςτϊν. Ειςαγωγι ςτθν Python

Σ ΤΑΤ Ι Σ Τ Ι Κ Η. Statisticum collegium V

Βάρειπ Δεδξμέμωμ. Εργαζηήριο ΙV. Τμήμα Πληροθορικής ΑΠΘ

Δομζσ Αφαιρετικότθτα ςτα Δεδομζνα

ΛΕΙΣΟΤΡΓΙΚΆ ΤΣΉΜΑΣΑ. 7 θ Διάλεξθ Διαχείριςθ Μνιμθσ Μζροσ Γ

Ειδικά Θζματα Βάςεων Δεδομζνων

Διαδικαςία Διαχείριςθσ Στθλϊν Βιβλίου Εςόδων - Εξόδων. (v.1.0.7)

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

MySchool Πρακτικζσ οδθγίεσ χριςθσ

Σφςτημα Κεντρικήσ Υποςτήριξησ τησ Πρακτικήσ Άςκηςησ Φοιτητών ΑΕΙ

Οδηγίες Πρόζβαζης ζηο EndNote Web. Πρόζβαζη ζηο EndNote Web

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

Προγραμματιςμόσ Μεκόδων Επίλυςθσ Προβλθμάτων. 15. Πίνακεσ ΙI. Ιωάννθσ Κατάκθσ. ΕΠΛ 032: Προγραμματιςμόσ Μεκόδων Επίλυςθσ Προβλθμάτων

Κατά τθν ενεργοποίθςθ τθσ ιδιότθτασ αυτισ ενδζχεται να εμφανιςτεί ζνα μινυμα ςαν αυτό τθσ παρακάτω εικόνασ. Απλά επιβεβαιϊςτε πατϊντασ ΟΚ.

SingularLogic Application. Παραμετροποίηση Galaxy Application Server

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

Εφδοξοσ Δήλωςη Συγγραμμάτων

ΑΝΑΠΣΤΞΘ ΕΦΑΡΜΟΓΩΝ Ε ΠΡΟΓΡΑΜΜΑΣΙΣΙΚΟ ΠΕΡΙΒΑΛΛΟΝ 3 ο ΓΕΝΙΚΟ ΛΤΚΕΙΟ Ν. ΜΤΡΝΘ- ΕΠΙΜΕΛΕΙΑ: ΠΤΡΙΔΑΚΘ Λ.

16. Πίνακεσ και Συναρτήςεισ

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

ΑΠΟΣΕΛΕΜΑΣΑ ΑΞΙΟΛΟΓΗΗ ΣΟΤ ΔΙΔΑΚΣΙΚΟΤ ΕΡΓΟΤ ΣΩΝ ΤΠΟΧΡΕΩΣΙΚΩΝ ΜΑΘΗΜΑΣΩΝ ΕΑΡΙΝΟΤ ΕΞΑΜΗΝΟΤ ΑΚΑΔΗΜΑΪΚΟΤ ΕΣΟΤ

x n D 2 ENCODER m - σε n (m 2 n ) x 1 Παραδείγματα κωδικοποιθτϊν είναι ο κωδικοποιθτισ οκταδικοφ ςε δυαδικό και ο κωδικοποιθτισ BCD ςε δυαδικό.

Ψθφιακά Ηλεκτρονικά. Ενότθτα 7 : Ελαχιςτοποίθςθ και κωδικοποίθςθ καταςτάςεων Φϊτιοσ Βαρτηιϊτθσ

Εγκατάσταση & Διαχείριση Joomla στο Π.Σ.Δ. ΣΥΜΒΟΥΛΟ ΡΛΗΟΦΟΙΚΗΣ Ν. ΣΕΩΝ & ΚΕ.ΡΛΗ.ΝΕ.Τ. Ν. ΣΕΩΝ

Εργαςτιριο Πικανοτιτων Σθμειϊςεισ προγραμματιςμοφ: βαςικζσ γνϊςεισ ανάπτυξθσ εφαρμογϊν. Κϊςτασ Αρβανιτάκθσ

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

Διαδικαςία Προγράμματοσ Ωρομζτρθςθσ. (v.1.0.7)

Η γλώςςα προγραμματιςμού C

Εγχειρίδιο Χριςθσ τθσ διαδικτυακισ εφαρμογισ «Υποβολι και παρακολοφκθςθ τθσ ζγκριςθσ Εκπαιδευτικών Πακζτων»

Γ' ΛΥΚΕΙΟΥ Η ΤΑΞΗ ΤΗΣ ΤΕΛΙΚΗΣ ΕΠΙΛΟΓΗΣ. Στθ ΓϋΛυκείου οι Ομάδεσ Προςανατολιςμοφ είναι τρεισ:

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

Η διαδικαςία επιλογήσ μαθημάτων

= = 124

Νζεσ Τάςεισ ςτην εκπαιδευτική διαδικαςία: Gamification

Αςκιςεισ ςε (i) Δομζσ Ευρετθρίων και Οργάνωςθ Αρχείων (ii) Κανονικοποίθςθ

Μεθολογία αςκιςεων αραίωςησ και ανάμειξησ διαλυμάτων (με τθν ίδια δ. ουςία).

1 ο ΜΑΘΗΜΑ Κεφάλαιο 1, Παράγραφοι 1.1, 1.2 ΕΙΣΑΓΩΓΗ ΣΤΗ ΣΤΑΤΙΣΤΙΚΗ ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ

ΥΡΟΝΣΙΣΗΡΙΟ Μ. Ε. ΚΑΙ ΚΕΝΣΡΟ ΙΔΙΑΙΣΕΡΩΝ ΜΑΘΗΜΑΣΩΝ «ΚΤΡΙΣΗ» ΔΙΑΓΩΝΙΜΑ ΘΕΜΑΣΑ Β ΛΤΚΕΙΟΤ ΥΕΒΡΟΤΑΡΙΟ 2018 ΑΕΠΠ

Οδηγίεσ προσ τουσ εκπαιδευτικοφσ για το μοντζλο τησ Αριθμογραμμήσ

Δομζσ Δεδομζνων Πίνακεσ

DIOSCOURIDES VERSION

Ονοματεπϊνυμο.. ΔΙΑΓΩΝΙΣΜΑ ΑΕΠΠ

Μθχανολογικό Σχζδιο, από τθ κεωρία ςτο πρακτζο Χριςτοσ Καμποφρθσ, Κων/νοσ Βαταβάλθσ

Εγχειρίδιο Χριςθσ: Εφαρμογι Αιτιςεων για τα Εκπαιδευτικά Προγράμματα του Προςωπικοφ των Επιχειριςεων Τροφίμων

Παράςταςη ςυμπλήρωμα ωσ προσ 1

5 ΜΕΘΟΔΟΙ - ΠΑΡΑΜΕΤΡΟΙ

Ρρογραμματιςμόσ Μεκόδων Επίλυςθσ Ρροβλθμάτων. 18. Αλφαριθμητικά. Ιωάννθσ Κατάκθσ. ΕΡΛ 032: Ρρογραμματιςμόσ Μεκόδων Επίλυςθσ Ρροβλθμάτων

ΑΞΙΟΛΟΓΗΣΗ ΕΚΠΑΙΔΕΥΤΙΚΟΥ

ΕΡΓΑΣΗΡΙΑΚΗ ΑΚΗΗ 4.1

Η θεωρία τησ ςτατιςτικήσ ςε ερωτήςεισ-απαντήςεισ Μέροσ 1 ον (έωσ ομαδοποίηςη δεδομένων)

Διαδικασία Δημιοσργίας Ειδικών Λογαριασμών. (v.1.0.7)

Transcript:

Βαςεις δεδομενων 1 Δρ. Aλεξανδροσ Βακαλουδθσ

Επεξεργαςία βάςθσ δεδομζνων Μιλιςαμε για ςχεδίαςθ με το μοντζλο οντοτιτων ςυςχετίςεων Και τθν υλοποίθςθ ςε πίνακεσ Ρολφ ωραία, ζχουμε καταςκευάςει τθ βάςθ Με ποιο ςκοπό? να ειςάγουμε Τροποποιοφμε Διαγράφουμε δεδομζνα Και να επιλζγουμε δεδομζνα βάςει κριτθρίων Ρ.χ. όνομα φοιτθτι με ΑΕΜ 23423 Μακιματα 6 ου εξαμινου Μζςοσ όροσ βακμολογίασ ςτα Λειτουργικα 1

Structured Query Language SQL Είναι θ γλϊςςα τθν οποία χρθςιμοποιοφμε για να «επικοινωνοφμε» με τθ βάςθ δεδομζνων Είτε απ ευκειασ γράφοντασ εντολζσ SQL Μζςα από τθ κονςόλα τθσ SQL Γράφουμε τθν εντολι, εκτελείται, παίρνουμε πίςω τθν απάντθςθ Η κυρίωσ μζςα από κϊδικα εφαρμογϊν

Structured Query Language Αυτιν τθν (απλι) γλϊςςα κα δοφμε ςτθ ςυνζχεια Είναι ςχετικά απλι Ουςιαςτικά είναι ςπαηοκεφαλιζσ: πϊσ να μετατρζψουμε μία ερϊτθςθ ςε κϊδικα SQL για τθ βάςθ δεδομζνων Select name from students where aem=34343

Embedded SQL Πλεσ οι γλϊςςεσ προγραμματιςμοφ υποςτθρίηουν επικοινωνία με βάςεισ δεδομζνων Δθλαδι Σφνδεςθ Εκτζλεςθ ερωτθμάτων SQL Επιςτροφι αποτελεςμάτων Ρολφ ςθμαντικό γιατί μασ επιτρζπει να χτίςουμε λειτουργικζσ εφαρμογζσ πάνω ςτισ βάςεισ δεδομζνων

Μζρθ τθσ SQL DDL Data Definition Language Εντολζσ για δθμιουργία αντικειμζνων ςε μία βάςθ, π.χ. πωσ δθμιουργοφμε ζνα πίνακα DML Data Manipulation Language Εντολζσ για αλλαγι αντικειμζνων, π.χ. πωσ προςκζτουμε ζνα πεδίο ςε ζνα πίνακα (SQL) Structured Query Language Εντολζσ για διαχείριςθ δεδομζνων (επιλογι, αλλαγι, διαγραφι ειςαγωγι)

Άνακτθςθ δεδομζνων με SQL Χρθςιμοποιοφμε εντολζσ τθσ μορφισ SELECT <ονόματα πεδίων> FROM <ονόματα πινάκων> WHERE <κριτιρια> ORDER BY <ονόματα πεδίων> GROUP BY <ονόματα πεδίων> HAVING < κριτιρια> Ρ.χ. Δϊςε μου τα μακιματα του 6 ου εξαμινου SELECT name FROM modules WHERE semester=6 Θα επιςτρέψει τά ονόματα των μαθημάτων που ικανοποιοφν το κριτήριο

Και άλλα παραδείγματα Δϊςε μου το όνομα και το τθλζφωνο του φοιτθτι με ΑΕΜ 32424 Select name, tel from students where aem= 32424 Δϊςε τισ θμερομθνίεσ γζννθςθσ των φοιτθτϊν με διψθφιο ΑΕΜ Select DOB from students where aem<100

Κριτιρια SQL Εμφανίηονται μετά το WHERE Αναφζρονται ςε ςυγκεκριμζνα πεδία των πινάκων Χρθςιμοποιοφν λογικοφσ τελεςτζσ AND, OR, NOT

Κριτιριο αναφοράσ IN Δϊςε μου τα ονομάτα των φοιτθτϊν που αντζγραψαν ςτισ εξετάςεισ, τα ΑΕΜ τουσ είναι 23434, 33333, 44444, 55555, 66666 Ρρϊτοσ τρόποσ Select name from students where aem= 23434 or aem= 33333 or aem= 44444 or aem= 55555 or aem= 66666 Αποδεκτό αλλά πολφπλοκο Άλλοσ τρόποσ: το κριτιριο ΙΝ Σφνταξθ ΙΝ (<τιμζσ) Το παραπάνω ερϊτθμα γίνεται Select name from students where aem in (23434, 33333, 44444, 55555, 66666)

Άλλα κριτιρια BETWEEN για τιμζσ ςε εφροσ Ρ.χ. αν κζλουμε τουσ υπαλλιλουσ οι οποίοι με μιςκο (sal) 1000-2000 Where sal>1000 and sal <2000 Where sal between 1000 and 2000 BEFORE AFTER Χρθςιμοποιείται για θμερομθνίεσ DOB AFTER 01/01/1970 ;

Μοναδικότθτα Distinct Ρολλζσ φορζσ κζλουμε να ενφανιςκεί μία φορά ζνα αποτζλεςμα ενόσ ερωτιματοσ Ρ.χ. δϊςε μου όλα τα μικρά ονόματα των φοιτθτϊν Select firstname from students Θα μασ δϊςει όλα τα μικρά ονόματα Άρα αν υπάρχουν 45 Γιαννθσ, κα εμφανιςκεί 45 φορζσ Για να εμφανιςκεί μία φορα κάκε διαφορετικι τιμι χρθςιμοποιοφμε τον όρο DISTINCT Select distinct firstname from students Θα επιςτρζψει μόνο τισ διαφορετικζσ τιμζσ (άρα μία φορά το Γιάννθσ)

Ταξινόμθςθ Με ποια ςειρά κα εμφανιςτοφν τα δεδομζνα? Με τθ ςειρά με τθν οποία ειςιχκθςαν ςτθ βάςθ Μποροφμε να αλλάξουμε τθ ςειρά βάηοντασ τθν εντολι ORDER BY <πεδία> ςτο τζλοσ του ερωτιματοσ Ρ.χ. Select name from students where aem in (23434, 33333, 44444, 55555, 66666) order by name, aem, fathersname Η ταξινόμθςθ κα γίνει με πρϊτο κριτιριο το όνομα, δευτερο το ΑΕΜ και τρίτο το πατρϊνυμο

Ταξινόμθςθ Η ταξινόμθςθ ακολουκεί τον τφπο του πεδίου VARCHAR2 -> αλφαβθτικά Αρικμοί -> από το μικρότερο Ημερομθνίεσ -> από το πιο παλιό Αν κζλουμε να αντιςτρζψουμε τθ ςειρά, προςκζτουμε ςτο τζλοσ τθ λζξθ desc

Επιλογι από πολλοφσ πίνακεσ JOIN query (ςφηευξθ πινάκων) Ρολλζσ φορζσ χρειάηεται να επιλζξουμε δεδομζνα από παραπάνω από ζνα πίνακεσ Οι οποίοι προφανϊσ ςυνδζονται Ρωσ? Με ξζνα κλειδιά

Ραράδειγμα Ζςτω θ βάςθ του ΤΕΙ με πίνακεσ Departments (id, name) students(id, AEM, name department) Modules(id, name, semester, department) Ποιοι φοιτητές παρακoλουθοφν τα μαθήματα 1 ου εξαμήνου του τμήματος πληροφορικής Select students.name, aem, modules.name from students, departments, modules where students. department=departments.id and modules. department=departments.id and modules.semester=1 and departments.name= ΡΛΗΟΦΟΙΚΗ

Ραρατθριςεισ Select students.name, aem, modules.name from students, departments, modules where students. department=departments.id and modules. department=departments.id and modules.semester=1 and departments.name= ΡΛΗΟΦΟΙΚΗ Τα κριτιρια modules.semester=1 and departments.name= ΡΛΗΟΦΟΙΚΗ είναι προφανι και προζρχονται από τισ απαιτιςεισ του ερωτιματοσ Τα υπόλοιπα κριτιρια από ποφ προζρχονται?

Συνδζοντασ πίνακεσ Select students.name, aem, modules.name from students, departments, modules where students. department=departments.id and modules. department=departments.id and modules.semester=1 and departments.name= ΡΛΗΟΦΟΙΚΗ Πταν ζνα ερϊτθμα χρθςιμοποιεί πολλοφσ πίνακεσ, υπάρχουν «κρυφά» κριτιρια Τθν ζνωςθ των κοινϊν τουσ πεδίων Στο ςυγκεκριμζνο παράδειγμα, οι τρεισ πίνακεσ πρζπει να ςυνδεκουν modules. department=departments.id department=departments.id

Επεξθγθςθ Πταν εκτελοφμε ζνα ςυηευκτικό ερϊτθμα, θ βάςθ δεδομζνων αρχικά δθμιουργεί το καρτεςιανό γινόμενο των πινάκων Δθλαδι κάκε ςυνδυαςμό των γραμμϊν του ενόσ πίνακα με τισ γραμμζσ άλλου πίνακα Από αυτό το καρτεςιανό γινόμενο επιλζγουμε τισ ςωςτζσ γραμμζσ

Επεξιγθςθ - παράδειγμα 1 Ρλθροφορικι 2 Μθχανολογία 3 Λογιςτικι Ραπαδιάσ 1 Δθμθτριου 2 1 Ρλθροφορικι Ραπαδιάσ 1 2 Μθχανολογία Ραπαδιάσ 1 3 Λογιςτικι Ραπαδιάσ 1 1 Ρλθροφορικι Δθμθτριου 2 2 Μθχανολογία Δθμθτριου 2 3 Λογιςτικι Δθμθτριου 2

Ραραδείγματα ερωτθμάτων Ζςτω θ βάςθ του ΤΕΙ με πίνακεσ Departments (id, name) students(id, AEM, name department) Modules(id, name, semester, department) Ροιοι είναι οι φοιτθτζσ του τμιματοσ Μθχανολογίασ (αλφαβθτικά) Ροιοι είναι οι φοιτθτζσ του τμιματοσ 1 (με ΑΕΜ) Ροια τα μακιματα 6 ου εξαμινου πλθροφορικισ Ροιοι φοιτθτζσ παρακολουκοφν το μάκθμα ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ 2 (αλφαβθτικά)

Σφνοψθ ςυηευκτικϊν ερωτθμάτων Εκτόσ από τα προφανι κριτιρια του ερωτιματοσ Χρειάηεται να ςυηεφξουμε με κρυφά κριτιρια τουσ πίνακεσ του ερωτιματοσ Με κριτιρια ιςότθτασ με βάςθ πρωτζυον/ξζνο κλειδί Αν π.χ. ζχουμε 5 πίνακεσ, χρειαηόμαςτε 4 τζτοια κριτιρια

Εξωτερικι ςφηευξθ Ρ.χ. Δϊςε τουσ φοιτθτζσ που παρακολουκοφν κάκε μάκθμα Select modules.name, students.name from students,modules where students.module =modules.id(+) Ζνα ζνα μάκθμα (π.χ. επιλογι) δεν το ζχει επιλζξει οφτε ζνασ φοιτθτισ κα εμφανιςκεί? Οχι

OUTER JOIN Ζαν κελουμε να εμφανιςκοφν γραμμζσ ενόσ πίνακα οι οποίεσ δεν ζχουν ςφνδεςθ με άλλο πίνακα Ρ.χ. μάκθμα το οποίο δεν ζχει φοιτθτζσ Χρθςιμοποιοφμε τθν εξωτερικι ςφηευξθ (outer join) Select modules.name, students.name from students.modules where students.module =modules.id(+) Ο τελεςτισ (+) δθλϊνει ότι μια τουλάχιςτον φορά κα εμφανιςκεί ςτο αποτζλεςμα κάκε module ανεξάρτθτα αν δεν ζχει αντίςτοιχεσ γραμμζσ ςτον πίνακα students Σε αυτιν τθν εμφάνιςθ, τα ςτοιχεία του students κα είναι κενά

Συναρτιςεισ κειμζνου Συναρτιςεισ επάνω ςε τφπουσ δεδομζνων VARCHAR2 LENGTH (το μικοσ των χαρακτιρων) LEFT (oι χ πρϊτοι χαρακτιρεσ) RIGHT (οι χ τελευταίοι χαρακτιρεσ) LOWER (ςε μικρά γράμματα) UPPER (ςε μεγάλα γράμματα)

Ραραδείγματα Δϊςε μου τα ονόματα των φοιτθτϊν με επίκετο μεγαλφτερο από 20 χαρακτιρεσ Select name from students where length(name)>20 Δϊςε που τα πρϊτα τρία γράμματα κάκε τμιματοσ Select left(name,3) from departments

Αρικμθτικζσ Συναρτιςεισ ABS (απόλυτοσ αρικμόσ) MOD (υπόλοιπo διαίρεςθσ) ROUND (ςτρογγυλοποίθςθ ςτα Χ δεκαδικά) TRUNC (το κάτω μζροσ ςτρογγυλοποίθςθσ) SQRT (τετραγωνικι ρίηα).

Χριςθ ςυναρτιςεων Η SQL χρθςιμοποιείται και για τθν εξαγωγι ςτατιςτικϊν ςυμπεραςμάτων Ρ.χ. Ροςοι φοιτθτζσ είναι ςτο τμιμα πλθροφορικισ Ρροςοχι! Πχι ποιοι είναι αλλά πόςοι είναι

Συγκεντρωτικζσ ςυναρτιςεισ COUNT Ρλικοσ AVG Μεςοσ όροσ MAX Μζγιςτο MIN Ελάχιςτο SUM Άκροιςμα Και πολλζσ άλλεσ ςυναρτιςεισ π.χ. διαςπορά

Ραραδείγματα Ρόςοι φοιτθτζσ είναι ςτο τμιμα 5? Select count(id) from students where dept=5 Οι ςυναρτιςεισ μποροφν να χρθςιμοποιοφνται ςε ςυνδυαςμό Ροςα γράμματα είναι το μεγαλφτερο επίκετο φοιτθτι? Select max(length(name)) from students;

Συναρτιςεισ και Ομαδοποίθςθ Ρολλζσ φορζσ δεν αρκεί θ εξαγωγι μίασ τιμισ από όλο το πινακα Χρειάηονται διαφορετικζσ τιμζσ ανά περίπτωςθ Ρ.χ. Μζτρθςε πόςοι φοιτθτζσ κατάγονται από κάκε πολθ Το οποίο ςθμαίνει Ομαδοποίθςε ανά πόλθ τισ εγγραφεσ του πίνακα φοιτθτζσ Μζτρθςε πόςοι είναι ςε κάκε πόλθ Εμφάνιςε το αποτζλεςμα Σερρεσ 123 Δραμα 54 Καβάλα 52 Θεςςαλονικθ 50

Συναρτιςεισ και Ομαδοποίθςθ Χρθςιμοποιοφμε τθν εντολι GROUP BY ομαδοποίθςε κατά Ρ.χ. Μζτρθςε πόςοι φοιτθτζσ κατάγονται από κάκε πολθ Select city, count(id) from students group by city Δθλαδι, ομαδοποίθςε τουσ ανά πόλθ Μετρθςε τουσ ανά πόλθ Δϊςε ΡΟΛΗ, <αποτζλεςμα μζτρθςθσ) Δϊςε τον αρικμό μακθμάτων ανά τμιμα και εξάμθνο

Σφνταξθ GROUP BY Η χριςθ τθσ GROUP BY είναι λίγο ιδιαίτερθ γιατί υπάρχουν οι παρακάτω (λογικοί) περιοριςμοί Στο τμιμα SELECT ζχουμε πεδια και ςυγκεντρωτικζσ ςυναρτιςεισ Πποιο πεδίο δεν είναι ςε ςυγκεντρωτικζσ ςυναρτιςεισ πρζπει να αναφζρεται ςτο τμιμα GROUP BY

Σφνοψθ SQL Η γλϊςςα επικοινωνίασ με τθ βάςθ δεδομζνων Για τθν ανάκτθςθ δεδομζνων ζχουμε εντολζσ SELECT FROM WHERE Στο WHERE ειςάγουμε τα κριτιρια αναηιτθςθσ ΔΕΝ ΕΚΝΑΙ ΔΥΣΚΟΛΗ Είναι ςπαηοκεφαλιζσ Και ςυνεπϊσ χρειάηεται ΜΟΝΟ ΕΞΑΣΚΗΣΗ

Επόμενθ εβδομάδα Και άλλα κριτιρια (HAVING) Εντολζσ τροποποίθςθσ INSERT, UPDATE, DELETE Και άλλεσ ςυναρτιςεισ