Maison >base de données >tutoriel mysql >Comment la clause GROUP BY de MySQL peut-elle concaténer des chaînes ?

Comment la clause GROUP BY de MySQL peut-elle concaténer des chaînes ?

Susan Sarandon
Susan Sarandonoriginal
2025-01-21 20:41:11442parcourir

How Can MySQL's GROUP BY Clause Concatenate Strings?

Clause GROUP BY de MySQL : combinaison de chaînes

La puissante clause GROUP BY de MySQL ne se limite pas à l'agrégation numérique. Il peut également concaténer efficacement des chaînes associées à des données groupées. Ceci est particulièrement utile lorsqu'il s'agit de tables contenant plusieurs lignes partageant un identifiant commun.

Considérez cet exemple de tableau :

foo_id foo_name
1 A
1 B
2 C

Notre objectif est de combiner foo_name valeurs pour chaque foo_id unique, ce qui donne :

foo_id foo_name
1 A, B
2 C

Cette transformation est réalisée à l'aide de la requête SQL suivante :

<code class="language-sql">SELECT foo_id, GROUP_CONCAT(foo_name SEPARATOR ', ') FROM table GROUP BY foo_id;</code>

Explication de la requête :

  • GROUP BY foo_id : Cela regroupe les lignes en fonction de la colonne foo_id, réunissant toutes les valeurs foo_name pour chaque identifiant unique.
  • GROUP_CONCAT(foo_name SEPARATOR ', ') : Cette fonction concatène les foo_name valeurs au sein de chaque groupe, en utilisant une virgule et un espace comme séparateur.

La fonction GROUP_CONCAT() propose un argument SEPARATOR, permettant une personnalisation flexible du délimiteur entre les chaînes concaténées. Pour plus de détails, reportez-vous à la documentation officielle de MySQL : https://www.php.cn/link/18fc3b6cc1e55ccea877c161e2e9ba27

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