Junior
Ποιο ερώτημα SQL πρέπει να χρησιμοποιηθεί για την ομαδοποίηση δεδομένων;
sobes.tech AI
Απάντηση από AI
SELECT
column1,
column2,
aggregate_function(column3)
FROM
your_table
WHERE
condition
GROUP BY
column1,
column2
ORDER BY
column1;
Χρησιμοποιείται το GROUP BY. Ομαδοποιεί τις γραμμές με ίσες τιμές σε μία ή περισσότερες στήλες σε μία γραμμή-σύνοψη, για την οποία μπορούν να χρησιμοποιηθούν συναρτήσεις σύνοψης (π.χ., COUNT, SUM, AVG, MIN, MAX).
SELECT- δείχνει τις στήλες που πρέπει να επιλεγούν. Πρέπει να περιλαμβάνουν στήλες για ομαδοποίηση και/ή συναρτήσεις σύνοψης.FROM- δείχνει τον πίνακα από τον οποίο αντλούνται τα δεδομένα.WHERE- προαιρετική συνθήκη για φιλτράρισμα γραμμών πριν από την ομαδοποίηση.GROUP BY- δείχνει τις στήλες βάσει των οποίων θα γίνουν οι ομαδοποιήσεις. Όλες οι μη-συναρτημένες στήλες στοSELECTπρέπει να είναι στοGROUP BY.HAVING- προαιρετική συνθήκη για φιλτράρισμα ομάδων μετά την ομαδοποίηση (χρησιμοποιείται με συναρτήσεις σύνοψης).ORDER BY- προαιρετική συνθήκη για ταξινόμηση των αποτελεσμάτων.
Παραδείγματα συναρτήσεων σύνοψης:
| Συνάρτηση | Περιγραφή |
|---|---|
COUNT() |
Μετράει τον αριθμό των γραμμών στην ομάδα. |
SUM() |
Υπολογίζει το άθροισμα των τιμών στη στήλη για κάθε ομάδα. |
AVG() |
Υπολογίζει τη μέση τιμή στη στήλη για κάθε ομάδα. |
MIN() |
Βρίσκει την ελάχιστη τιμή στη στήλη για κάθε ομάδα. |
MAX() |
Βρίσκει τη μέγιστη τιμή στη στήλη για κάθε ομάδα. |