Aggregation Functions
Fait partie de la section Les fondamentaux du Journey SQL de Coddy — leçon 68 sur 72.
Les fonctions d'agrégation sont utilisées pour calculer la AVG() ou la MAX() ou toute autre fonction d'agrégation jusqu'à la ligne actuelle.
Par exemple, nous pourrions calculer le revenu maximum obtenu jusqu'à chaque période de fin :
| mois | revenu | région |
| 4 | 40 | Est |
| 5 | 20 | Est |
| 6 | 60 | Ouest |
| 7 | 55 | Ouest |
| 8 | 61 | Est |
SELECT month, revenue, MAX(revenue) OVER (ORDER BY month ASC) as max_revenue
from table1Cela retournera :
| mois | revenu | revenu_max |
| 4 | 40 | 40 |
| 5 | 20 | 40 |
| 6 | 60 | 60 |
| 7 | 55 | 60 |
| 8 | 61 | 61 |
Pour les mois 4 et 5, le revenu maximum est de 40, pour les mois 6 et 7, il est de 60, et pour le mois 8, il est de 61. C'est parce que lorsqu'il trouve un nouveau revenu plus élevé, il abandonne l'ancien et utilise le plus grand jusqu'à présent.
Pour la fonction AVG(), cela ressemblera à ceci :
SELECT month, revenue, AVG(revenue) OVER (ORDER BY month ASC) as avg_revenue
from table1| mois | revenu | revenu_moyen |
| 4 | 40 | 40 |
| 5 | 20 | 30 |
| 6 | 60 | 40 |
| 7 | 55 | 43.75 |
| 8 | 61 | 47.2 |
Nous pouvons également grouper nos calculs par catégories spécifiques en utilisant PARTITION BY. Par exemple :
SELECT month, revenue, region,
MAX(revenue) OVER (PARTITION BY region ORDER BY month ASC) as max_revenue
FROM table1Nous donnerait :
| mois | revenu | région | revenu_max |
| 4 | 40 | Est | 40 |
| 5 | 20 | Est | 40 |
| 6 | 60 | Ouest | 60 |
| 7 | 55 | Ouest | 60 |
| 8 | 61 | Est | 61 |
Désormais, le maximum est calculé séparément pour chaque région. La région Est et la région Ouest conservent leurs propres maximums cumulés de manière indépendante.
Défi
FacileTables et colonnes disponibles :
<strong>books</strong>:<strong>book</strong>,<strong>page</strong>,<strong>words</strong>
Pour chaque livre, affichez le nom du livre, ses pages totales, le nombre de mots sur chaque page, et calculez :
- Le nombre maximum de mots trouvés sur n'importe quelle page de ce livre
- Le nombre moyen de mots par page pour l'ensemble du livre
- La différence entre les mots de la page actuelle et la moyenne des mots par page du livre
Affichez les résultats triés par livre et par numéro de page.
Retournez les colonnes suivantes :
bookpagewordsmax_words_in_bookavg_words_per_pagediff_from_avg
Essayez vous-même
Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Les fondamentaux
4More Keywords
The IN keywordThe BETWEEN keywordThe LIKE keywordThe AS keywordRecap - Cellphone Models2Conditions
Conditions BasicsThe AND keywordThe OR keywordThe NOT keywordMultiple Conditions CombinedParenthesisBooleans5Arithmetic Operations
Mathematical OperatorsMathematical ColumnsThe Modulo OperationThe ROUND() Function3Specific Return Format
Null valuesSort Results Part 1Sort Results Part 2Recap - Cyber Security FirmLimit number of recordsRecap - Vehicle Factory6Intro Challenges
Recap - Parliamentary ElectionRecap - Police Criminal ArrestRecap - Bar Beverage ContainerRecap - Engineer new columns9Multiple tables
Basic Join Part 1Basic Join Part 2Recap - JoinSelf joinRecap - Self JoinUnionSimplify queries, WITH keywordRecap - With QueriesRecap - Real Estate Contractor12Window Functions part 2
RANK & DENSE_RANK FunctionsRecap - RANK & DENSE_RANKNTILE FunctionAggregation FunctionsROWS & RANGE Criterion