Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Ερωτήματα Επιλογής Δεδομένων

Παρόμοιες παρουσιάσεις


Παρουσίαση με θέμα: "Ερωτήματα Επιλογής Δεδομένων"— Μεταγράφημα παρουσίασης:

1 Ερωτήματα Επιλογής Δεδομένων
Ερωτήματα Επιλογής Δεδομένων     09:12 Χατζάκης Ηλίας

2 Ερωτήματα Επιλογής Δεδομένων Από ένα πίνακα
Ερωτήματα Επιλογής Δεδομένων Από ένα πίνακα Eπιλογή όλων των στηλών και όλων των εγγραφών του πίνακα SELECT col1, col2,… FROM πίνακας; ή SELECT * FROM πίνακας; Eπιλογή κάποιων στηλών του πίνακα (πράξη της προβολής) SELECT col1, col5,col7,col4 FROM πίνακας ; Eπιλογή των εγγραφών του πίνακα που ικανοποιούν τη συνθήκη(πράξη του περιορισμού) SELECT * FROM πίνακας WHERE συνθήκη ; Πράξη της προβολής και περιορισμού ταυτόχρονα SELECT col1, col5,col7,col4 FROM πίνακας WHERE συνθήκη ; Ταξινόμηση αποτελεσμάτων ως προς κάποιες στήλες SELECT col1, col5,col7,col4 FROM πίνακας WHERE συνθήκη ORDER BY col3,col5 ;     09:12 Χατζάκης Ηλίας

3 Παραδείγματα Επιλογής Δεδομένων
Εμφάνιση όλων των στοιχείων των ιδιοκτητών από το Ηράκλειο SELECT * FROM idioktites WHERE poli=‘Ηράκλειο’; Εμφάνιση όλων των στοιχείων των αγροκτημάτων του Ηρακλείου και της Ιεράπετρας SELECT * FROM agroktimata WHERE poli IN ('Ηράκλειο','Ιεράπετρα'); Εμφάνιση όλων των στοιχείων των αγροκτημάτων που έχουν περισσότερα από 5 ελαιόδενδρα και βρίσκονται στο Ηράκλειο ή στην Ιεράπετρα select * from agroktimata where poli in ('Ηράκλειο','Ιεράπετρα') and elaiodentra>5; Εμφάνιση των ΑΔΤ, ΕΠΩΝΥΜΩΝ και ΟΝΟΜΑΤΩΝ των ιδιοκτητών από το Ηράκλειο SELECT adt,eponymo , onoma FROM idioktites WHERE poli=“Ηράκλειο”; Ιδιο με το προηγούμενο ερώτημα αλλά τα στοιχεία είναι ταξινομημένα ως προς το ΕΠΩΝΥΜΟ και το ΟΝΟΜΑ SELECT adt,eponymo , onoma FROM idioktites WHERE poli=“Ηράκλειο” order by eponymo,onoma; Εμφάνιση των ΕΠΩΝΥΜΩΝ και ΟΝΟΜΑΤΩΝ όλων των ιδιοκτητών αλλά ίδια αποτελέσματα(ίδιες γραμμες) εμφανίζονται μία φορά SELECT DISTINCT eponymo , onoma FROM idioktites     09:12 Χατζάκης Ηλίας

4 Ερωτήματα Επιλογής Δεδομένων από πολλούς πίνακες
Ερωτήματα Επιλογής Δεδομένων από πολλούς πίνακες καρτεσιανό γινόμενο Select * from πίνακας1, πίνακας2,… Συνένωση Select * from (πίνακας1 join πίνακας2 on συνθήκη) join πίνακας3 on συνθήκη …. Παρατήρηση Όταν ένα πεδίο υπάρχει σε πολλούς πίνακες του ερωτήματος τότε πρέπει να διευκρινίζουμε από ποιόν πίνακα προέρχεται γράφοντας: όνομα_πίνακα.όνομα_πεδίου 09:12 Χατζάκης Ηλίας

5 Παραδείγματα Επιλογής Δεδομένων από πολλούς πίνακες
Παραδείγματα Επιλογής Δεδομένων από πολλούς πίνακες Καρτεσιανό γινόμενο select idioktisies.code,toponymio,oikismos,poli,elaiodentra,pososto from idioktisies,agroktimata where afm='3000'; Συνένωση Εμφάνιση των αγροτεμαχίων που κατέχει ο ιδιοκτήτης με ΑΦΜ 3000 select idioktisies.code,toponymio,oikismos,poli,elaiodentra,pososto from idioktisies join agroktimata on idioktisies.code=agroktimata.code where afm='3000'; Εμφάνιση των στοιχείων όλων των αγροκτημάτων και των κατόχων τους select idioktisies.code, toponymio, oikismos, agroktimata.poli, elaiodentra,pososto,idioktites.afm,eponymo,onoma from (idioktisies join agroktimata on idioktisies.code=agroktimata.code) join idioktites on idioktites.afm=idioktisies.afm;     09:12 Χατζάκης Ηλίας

6 Ερωτήματα ομαδοποίησης αποτελεσμάτων συναθροιστικές συναρτήσεις
Ερωτήματα ομαδοποίησης αποτελεσμάτων συναθροιστικές συναρτήσεις SELECT col1, col2,… FROM πίνακας…. group by column having συνθήκη Παρατηρήσεις α) Η ομαδοποίησης αποτελεσμάτων συνήθως χρησιμοποιείται όταν στο select υπάρχουν συναθροιστικές συναρτήσεις (sum, avg, count, min,max) και υλοποιείται με την χρήση του όρου group by. Β) Η πρόταση having χρησιμοποιείται για να εφαρμόσουμε την πράξη του περιορισμού στα αποτελέσματα της ομαδοποίησης (group by) Η πρόταση having περιορίζει τις γραμμές που επιστρέφονται από μία πρόταση group by με τον ίδιο τρόπο που η πρόταση where περιορίζει τις γραμμές που επιστρέφονται από την πρόταση select. Τόσο η where όσο και η having μπορούν να συμπεριληφθούν στην ίδια πρόταση select. Η where εφαρμόζεται πριν την ομαδοποίηση και η having εφαρμόζεται αφού σχηματιστούν οι ομάδες (group by) και υπολογιστούν οι συναθροιστικές συναρτήσεις. 09:12 Χατζάκης Ηλίας

7 Παραδείγματα ομαδοποίησης αποτελεσμάτων
Παραδείγματα ομαδοποίησης αποτελεσμάτων Εμφάνιση των στοιχείων όλων των ιδιοκτητών καθώς και τον συνολικό αριθμό ελαιοδέντρων που κατέχει ο καθένας select idioktites.afm,adt,eponymo,onoma, sum(elaiodentra*pososto/100) as plithos_elaiodentron from (idioktisies join agroktimata on idioktisies.code=agroktimata.code) join idioktites on idioktites.afm=idioktisies.afm group by idioktites.afm; Εμφάνιση των στοιχείων όλων των αγροτεμαχίων που το συνολικό ποσοστό ιδιοκτησίας των κατόχων του είναι διάφορο του select agroktimata.code, toponymio, oikismos, agroktimata.poli, elaiodentra,sum(pososto) from idioktisies join agroktimata on idioktisies.code=agroktimata.code group by agroktimata.code having sum(pososto)<>100; 09:12 Χατζάκης Ηλίας

8 Πράξεις Συνόλων Ένωση συνόλων Select …. Union select …
Πράξεις Συνόλων Ένωση συνόλων Select …. Union select … Τομή συνόλων Select …. intersect select … Διαφορά συνόλων Select …. except select … Παρατήρηση Τα ερωτήματα που μετέχουν στις πράξεις συνόλων πρέπει να δίνουν αποτελέσματα με τον ίδιο αριθμό στηλών και οι στήλες που αντιστοιχούν κατά σειρά να είναι του ίδιου τύπου. 09:12 Χατζάκης Ηλίας

9 Παραδείγματα με πράξεις συνόλων
Εμφάνιση των αγροτεμαχίων που κατέχει ο ιδιοκτήτης με ΑΦΜ 3000 καθώς και το συνολικό αριθμό των Ελαιοδενδρων που περιέχουν. select ' ' as sort,idioktisies.code,toponymio,oikismos,poli, elaiodentra*pososto/100 as elaiodentra from idioktisies join agroktimata on idioktisies.code=agroktimata.code where afm='3000‘ UNION select '======' as sort,'======= ' ,'====== ' ,'======' ,'======' , '000 ‘ select 'ΙΔΙΟΚΤΗΤΗΣ ' as sort,idioktites.afm ,adt,eponymo,onoma, sum(elaiodentra*pososto/100) from (idioktisies join agroktimata on idioktisies.code=agroktimata.code) join idioktites on idioktites.afm=idioktisies.afm where idioktites.afm='3000' group by idioktites.afm order by sort Εμφάνιση των ιδιοκτητών που έχουν αγροκτήματα οπουδήποτε εκτός από το Ηράκλειο. select idioktites.afm,adt,eponymo,onoma,tilefono from (idioktisies join agroktimata on idioktisies.code=agroktimata.code) join idioktites on idioktites.afm=idioktisies.afm where agroktimata.poli<>'Ηράκλειο' EXCEPT from (idioktisies join agroktimata on idioktisies.code=agroktimata.code) join idioktites on idioktites.afm=idioktisies.afm where agroktimata.poli='Ηράκλειο'; 09:12 Χατζάκης Ηλίας


Κατέβασμα ppt "Ερωτήματα Επιλογής Δεδομένων"

Παρόμοιες παρουσιάσεις


Διαφημίσεις Google