Περισσότερα
Χρήση της ομάδας κατά σε πολλαπλές στήλες
Καταλαβαίνω το νόημα του "GROUP BY x".
Αλλά πώς λειτουργεί το GROUP BY x, y
και τι σημαίνει;
955
2
"Ομαδοποίηση κατά X" σημαίνει να τοποθετήσετε όλα τα άτομα με την ίδια τιμή για το X σε μία ομάδα.
Ομαδοποίηση κατά X, Y
σημαίνει να τοποθετήσετε όλα τα άτομα με τις ίδιες τιμές για τα X και Y σε μία ομάδα.Για να γίνει κατανοητό με ένα παράδειγμα, ας πούμε ότι έχουμε τον ακόλουθο πίνακα, που έχει να κάνει με το ποιος παρακολουθεί ποιο μάθημα σε ένα πανεπιστήμιο:
Όταν χρησιμοποιείτε μια
group by
μόνο για τη στήλη του θέματος, ας πούμε:Θα λάβετε κάτι σαν:
...επειδή υπάρχουν 5 καταχωρήσεις για το ITB001 και 2 για το MKB114.
Αν θέλαμε να "ομαδοποιήσουμε" δύο στήλες:
θα παίρναμε αυτό:
Αυτό συμβαίνει επειδή, όταν ομαδοποιούμε με βάση δύο στήλες, μας λέει "Ομαδοποιήστε τα έτσι ώστε όλα αυτά με το ίδιο Θέμα και Εξάμηνο να βρίσκονται στην ίδια ομάδα, και στη συνέχεια υπολογίστε όλες τις συναρτήσεις αθροίσματος (Count, Sum, Average, κ.λπ.) για κάθε μία από αυτές τις ομάδες". Σε αυτό το παράδειγμα, αυτό αποδεικνύεται από το γεγονός ότι, όταν τους μετράμε, υπάρχουν τρία άτομα που κάνουν το ITB001 στο 1ο εξάμηνο και δύο που το κάνουν στο 2ο εξάμηνο. Και τα δύο άτομα που κάνουν το MKB114 είναι στο εξάμηνο 1, οπότε δεν υπάρχει σειρά για το εξάμηνο 2 (κανένα δεδομένο δεν ταιριάζει στην ομάδα "MKB114, εξάμηνο 2")
Ελπίζω ότι αυτό είναι λογικό.
Η ρήτρα
GROUP BY
χρησιμοποιείται σε συνδυασμό με τις συναρτήσεις συνάθροισης για την ομαδοποίηση του συνόλου αποτελεσμάτων με βάση μία ή περισσότερες στήλες. π.χ.:Να θυμάστε αυτή τη σειρά:
Μπορείτε να τα χρησιμοποιήσετε όλα αυτά εάν χρησιμοποιείτε συναρτήσεις συνάθροισης και αυτή είναι η σειρά που πρέπει να οριστούν, διαφορετικά μπορεί να λάβετε σφάλμα.
Οι αθροιστικές συναρτήσεις είναι οι εξής: