Maison >base de données >tutoriel mysql >Comment la clause GROUP BY agrège-t-elle les données dans SQL ?

Comment la clause GROUP BY agrège-t-elle les données dans SQL ?

Barbara Streisand
Barbara Streisandoriginal
2025-01-10 13:16:42671parcourir

How Does the GROUP BY Clause Aggregate Data in SQL?

Comprendre la clause GROUP BY de SQL pour l'agrégation de données

La clause GROUP BY est fondamentale pour la synthèse des données dans les bases de données SQL. Illustrons sa fonction avec une table nommée Tab1, contenant les attributs a1, a2 et autres.

Considérez cette requête :

<code class="language-sql">SELECT a1, a2, SUM(a3) FROM Tab1 GROUP BY a1, a2;</code>

Explication de la requête :

Cette instruction SQL regroupe les lignes de Tab1 en fonction des valeurs de a1 et a2. Pour chaque paire unique de valeurs a1 et a2, il calcule la somme des valeurs a3 correspondantes au sein de ce groupe.

Caractéristiques de l'ensemble de résultats :

Le résultat de la requête est une nouvelle table avec :

  • Colonnes : Les attributs d'origine a1 et a2, ainsi que la colonne agrégée SUM(a3).
  • Lignes : Chaque ligne représente une combinaison distincte de a1 et a2 du tableau Tab1 original.

Plusieurs lignes possibles :

Il est important de noter que la clause GROUP BY ne garantit pas intrinsèquement un résultat sur une seule ligne. Plusieurs lignes seront renvoyées si Tab1 contient diverses combinaisons uniques de valeurs a1 et a2. Cependant, chaque ligne résultante représentera de manière unique un groupe partageant des valeurs a1 et a2 identiques.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn