Συγκεντρωτικές Συναρτήσεις

Στην συνέχεια θα αναφερθούμε στον τρόπο με τον οποίο μπορούμε να εισάγουμε σε ένα ερώτημα συγκεντρωτικές συναρτήσεις ομαδοποιώντας τις πληροφορίες. Με την χρήση των συγκεντρωτικών συναρτήσεων, μπορούμε να υπολογίσουμε π.χ. το άθροισμα, το πλήθος, τον μέσο όρο, την μέγιστη και την ελάχιστη τιμή σε ένα ερώτημα. Ας δούμε ένα παράδειγμα. Ανοίγουμε τον πίνακα «Πελάτες». Σ’ αυτόν τον πίνακα εμφανίζονται τα στοιχεία 291 πελατών. Δεν χρειάζεται όμως να ανοίγουμε έναν πίνακα, για να πληροφορηθούμε το πλήθος των εγγραφών του. Θα δημιουργήσουμε ένα ερώτημα, το οποίο θα εμφανίζει το πλήθος των εγγραφών του. Δημιουργούμε ένα νέο ερώτημα σε προβολή σχεδίασης. Προσθέτουμε τον πίνακα «Πελάτες». Εισάγουμε μόνο το πεδίο «ΚωδΠελάτη». Κάνουμε κλικ στο εργαλείο «Συγκεντρωτικά στοιχεία». Εμφανίζεται μία νέα γραμμή, «Συγκεντρωτικά στοιχεία». Στην γραμμή αυτή, στο πεδίο «Κωδικός Πελάτη», αναγράφεται «Ομαδοποίηση κατά». Εμείς θέλουμε να εμφανίσουμε το πλήθος των Πελατών. Πατάμε λοιπόν το βελάκι, και εμφανίζονται όλες οι διαθέσιμες συγκεντρωτικές συναρτήσεις. ʼθροισμα Μέσος όρος Μικρότερη τιμή Μεγαλύτερη τιμή Πλήθος κ.τ.λ. Επιλέγουμε Πλήθος. Εκτελούμε το ερώτημα. Εμφανίζεται ένα μόνο πεδίο, με όνομα «Πλήθος του ΚωδΠελάτη», και μία μόνο εγγραφή στην οποία εμφανίζεται το πλήθος των κωδικών πελατών, 291 συνολικά. Εάν δεν θέλουμε ως όνομα αυτό που προτείνει η Access, μπορούμε να ορίσουμε αυτό που θέλουμε. Μεταβαίνουμε σε προβολή σχεδίασης, και στην αρχή του πεδίου ΚωδΠελάτη, πληκτρολογούμε το όνομα που θέλουμε, έστω «ΠλήθοςΠελατών», ακολουθούμενο από άνω και κάτω τελεία. Εκτελούμε το ερώτημα, και βλέπουμε ότι το πεδίο πλέον ονομάζεται «ΠλήθοςΠελατών». Κλείνουμε το ερώτημα. Ας δούμε ένα δεύτερο παράδειγμα. Στο προηγούμενο video-μάθημα, είχαμε δημιουργήσει ένα ερώτημα το οποίο ομαδοποιούσε τους ΤΚ των πελατών μας. Και ήταν αυτό. Μας εμφάνιζε τα μοναδικά TK. Ας υποθέσουμε πως θέλουμε να δούμε πόσους πελάτες έχουμε για κάθε ΤΚ,. Κάνουμε διπλό κλικ στο πεδίο ΚωδΠελάτη, και ορίζουμε ως συγκεντρωτική συνάρτηση το πλήθος. Εκτελούμε το ερώτημα. Εμφανίστηκε ένα ακόμη πεδίο με όνομα ΠλήθοςτουΚωδΠελάτη, το οποίο αναφέρεται στο πλήθος των πελατών για τον κάθε ΤΚ. Έτσι στον ΤΚ 54248 έχουμε 13 πελάτες, στον 54249 2 κ.ο.κ. Χρησιμοποιήσαμε το πεδίο «ΚωδΠελάτη», για να βρούμε το πλήθος των εγγραφών, διότι το πεδίο αυτό είναι και πρωτεύων κλειδί του πίνακα. Ας δούμε ένα ακόμη παράδειγμα. Εκτελούμε το ερώτημα test3. Στο ερώτημα αυτό εμφανίζονται η ημερομηνία, οι κωδικοί, οι τίτλοι των δίσκων, οι υπότιτλοι, καθώς και η ποσότητα των δίσκων σε κάθε πώληση. Χρησιμοποιώντας την κατάλληλη συγκεντρωτική συνάρτηση, θα τροποποιήσουμε το ερώτημα ώστε να εμφανίζονται οι συνολικές πωλήσεις του κάθε δίσκου. Π.χ. η ποσότητα των δίσκων με κωδικό 1, είναι 5, 3 συν 2. Μεταβαίνουμε σε προβολή σχεδίασης του ερωτήματος. Κάνουμε κλικ στο εργαλείο «Συγκεντρωτικά στοιχεία». Στη γραμμή συγκεντρωτικά στοιχεία του πεδίου «Ποσότητα», επιλέγουμε «Άθροισμα». Μεταβαίνουμε σε προβολή φύλλου δεδομένων. Παρατηρούμε ότι το αποτέλεσμα δεν έχει αλλάξει. Θα πρέπει να μην ομαδοποιήσουμε τα δεδομένα ως προς την ημερομηνία, διότι θέλουμε όλες τις ποσότητες ανεξάρτητα από ημερομηνίες. Διαγράφουμε λοιπόν το πεδίο Ημερομηνία. Εκτελούμε το ερώτημα. Εμφανίζεται το άθροισμα των δίσκων που πουλήθηκαν, π.χ. για τον δίσκο με κωδικό 1, η ποσότητα είναι 5, με κωδικό 2 είναι επίσης 5, με κωδικό 3 είναι 10 κ.ο.κ. Κλείνουμε το ερώτημα. Ας δούμε ένα ακόμη παράδειγμα. Εκτελούμε το ερώτημα test4. Στο ερώτημα αυτό εμφανίζονται ο κωδικός, το όνομα της εταιρίας, ο κωδικός του δίσκου, ο τίτλος και η τιμή του. Θα τροποποιήσουμε το ερώτημα αυτό ομαδοποιώντας το κατά εταιρία, και εμφανίζοντας το πλήθος των δίσκων, την μέση, την ελάχιστη, και τη μέγιστη τιμή δίσκου για την κάθε εταιρία. Μεταβαίνουμε σε προβολή σχεδίασης. Κάνουμε κλικ στο εργαλείο «Συγκεντρωτικά στοιχεία». Στη γραμμή συγκεντρωτικά στοιχεία του πεδίου «Κωδικός δίσκου», επιλέγουμε «Πλήθος». Έτσι θα υπολογίσουμε πόσους δίσκους έχει κυκλοφορήσει κάθε εταιρεία. Διαγράφουμε το πεδίο «Τίτλος Συλλογής», διότι δεν μας ενδιαφέρει ο τίτλος του κάθε δίσκου, αλλά ο κωδικός του, και η τιμή του. Στο πεδίο «Τιμή», επιλέγουμε την συγκεντρωτική συνάρτηση «Μέσος όρος». Προσθέτουμε ξανά το πεδίο «Τιμή» από τον πίνακα «Δίσκος», επιλέγουμε την συγκεντρωτική συνάρτηση «Μικρότερη τιμή». Προσθέτουμε ακόμη μία φορά το πεδίο «Τιμή», επιλέγουμε την συγκεντρωτική συνάρτηση «Μεγαλύτερη τιμή». Μεταβαίνουμε σε προβολή φύλλου δεδομένων. Εμφανίζεται το πλήθος των δίσκων, η μέση, η ελάχιστη και η μέγιστη τιμή δίσκου για την κάθε εταιρία. Π.χ. η εταιρία Columbia, έχει ηχογραφήσει 17 δίσκους. Η μέση τιμή είναι 15,24€. Ο φτηνότερος δίσκος κοστίζει 11€, και ο ακριβότερος 20€. Παρατηρούμε ότι τα ονόματα των συγκεντρωτικών πεδίων, είναι περιφραστικά. Π.χ. «ΠλήθοςΤουΚωδΔίσκου», «ΜέσοςΌροςΤουΤιμή» κτλ. Εάν θέλουμε να ορίσουμε τα δικά μας ονόματα κάνουμε το εξής. Μεταβαίνουμε σε προβολή σχεδίασης, στο πεδίο που θέλουμε να ορίσουμε όνομα, εισάγουμε το όνομα πριν από το πεδίο, και προσθέτουμε την άνω και κάτω τελεία, ΠλήθοςΔίσκων, άνω και κάτω τελεία. Εκτελούμε το ερώτημα, και παρατηρούμε ότι το όνομα έχει αλλάξει. Μπορούμε να εισάγουμε ακόμη και κριτήρια και να ορίσουμε κάποια ταξινόμηση στα αποτελέσματα των συγκεντρωτικών ερωτημάτων. Μεταβαίνουμε σε προβολή σχεδίασης. Στο πεδίο Τιμή, όπου υπολογίζουμε τον μέσο όρο, μπορούμε να ορίσουμε σαν κριτήριο το μεγαλύτερο (>) από 16. Στο πεδίο «ΚωδΔίσκου», όπου υπολογίζουμε το πλήθος των δίσκων, μπορούμε να εφαρμόσουμε φθίνουσα ταξινόμηση, έτσι ώστε η εταιρεία με τους περισσότερους δίσκους να εμφανίζεται πρώτη. Εκτελούμε το ερώτημα. ʼρα η METAL BLADE, είναι η εταιρεία με τους περισσότερους δίσκους, όταν ο μέσος όρος τιμής των δίσκων, είναι μεγαλύτερος από 16€.