όπου ρήτρα
* Σκοπός: Φίλτρα σειρές Πριν Οποιεσδήποτε πράξεις συσσωμάτωσης (όπως «sum», `avg`,` count »κλπ.).
* ισχύει για: Μεμονωμένες σειρές.
* συνθήκες: Συνήθως περιλαμβάνουν συγκρίσεις και λογικούς χειριστές που λειτουργούν σε μεμονωμένες στήλες εντός του πίνακα.
* Παράδειγμα:
`` sql
Επιλέξτε * από πελάτες όπου χώρα ='USA';
`` `
Αυτό το ερώτημα ανακτά όλους τους πελάτες από τον πίνακα «Πελάτες» όπου η στήλη «χώρα» ισούται με τις ΗΠΑ.
έχοντας ρήτρα
* Σκοπός: Φίλτρα σειρές μετά από Επιχειρήσεις συσσωμάτωσης.
* ισχύει για: Τα αποτελέσματα της συσσωμάτωσης (ομάδα από).
* συνθήκες: Συνήθως περιλαμβάνουν συγκρίσεις συγκεντρωτικών τιμών χρησιμοποιώντας συνολικές λειτουργίες (π.χ., `SUM (PRICE)`, `avg (ηλικία)`, `count (*)`) σε συνδυασμό με λογικούς χειριστές.
* Παράδειγμα:
`` sql
Επιλέξτε City, AVG (ηλικία) ως eerement_age
Από πελάτες
Ομάδα ανά πόλη
Έχοντας το μέσο όρο> 30;
`` `
Αυτό το ερώτημα ομαδοποιεί τους πελάτες από την «πόλη» και υπολογίζει τη μέση ηλικία για κάθε πόλη. Στη συνέχεια, φιλτράρει τα αποτελέσματα που δείχνουν μόνο πόλεις όπου η μέση ηλικία είναι μεγαλύτερη από 30.
Βασικές διαφορές με λίγα λόγια:
* χρονισμός: «Όπου 'φίλτρα πριν από τη συσσωμάτωση,« έχοντας «φίλτρα μετά.
* Πεδίο εφαρμογής: "Όπου" εργάζεται σε μεμονωμένες σειρές, "έχοντας έργα σε συγκεντρωτικά αποτελέσματα.
* συνθήκες: "Όπου" χρησιμοποιεί τις συνθήκες σε μεμονωμένες στήλες, "έχει" χρησιμοποιεί συνθήκες σε συγκεντρωτικές τιμές.
Πότε να χρησιμοποιήσετε κάθε ρήτρα:
* Χρησιμοποιήστε το `όπου 'όταν θέλετε να φιλτράρετε τα δεδομένα με βάση τις μεμονωμένες τιμές σειράς πριν από οποιαδήποτε συσσωμάτωση.
* Χρησιμοποιήστε το `έχοντας όταν θέλετε να φιλτράρετε τα συγκεντρωτικά αποτελέσματα (όπως τα ομαδοποιημένα δεδομένα) με βάση τις συνθήκες που περιλαμβάνουν συγκεντρωτικές τιμές.
Σημείωση: Μπορείτε να χρησιμοποιήσετε και τα δύο `where` και` έχοντας ρήτρες στο ίδιο ερώτημα, αλλά `where` εφαρμόζεται πρώτα για να φιλτράρει τις σειρές που χρησιμοποιούνται για τη συσσωμάτωση και στη συνέχεια` έχοντας χρησιμοποιείται για να φιλτράρει τα συγκεντρωτικά αποτελέσματα.
Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα