Maison >base de données >tutoriel mysql >Comment puis-je concaténer des chaînes dans MySQL à l'aide de GROUP BY ?

Comment puis-je concaténer des chaînes dans MySQL à l'aide de GROUP BY ?

Barbara Streisand
Barbara Streisandoriginal
2025-01-21 20:26:17271parcourir

How Can I Concatenate Strings in MySQL Using GROUP BY?

Combinaison d'entrées en double dans MySQL à l'aide de GROUP_CONCAT

Ce guide explique comment fusionner des lignes avec des valeurs foo_id identiques, en concaténant leurs entrées foo_name correspondantes en une seule chaîne dans une table MySQL.

La solution : GROUP_CONCAT et GROUP BY

La fonction GROUP_CONCAT de MySQL, utilisée conjointement avec GROUP BY, résout efficacement ce problème. Voici la requête :

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

Répartition des requêtes :

  • SELECT id, GROUP_CONCAT(name SEPARATOR ' ') : Ceci sélectionne la colonne id et utilise GROUP_CONCAT pour combiner les valeurs de la colonne name pour chaque groupe. Le SEPARATOR ' ' spécifie un espace comme délimiteur entre les noms concaténés.
  • FROM table : Indique le tableau contenant les données.
  • GROUP BY id : Regroupe les lignes en fonction des valeurs uniques dans la colonne id.

Comment ça marche :

GROUP_CONCAT regroupe les valeurs non NULL de chaque groupe défini par GROUP BY. Le séparateur assure la lisibilité en plaçant des espaces entre les noms concaténés. Cela fusionne efficacement les lignes avec le même id, créant une seule ligne avec tous les noms associés combinés en une seule chaîne.

Lectures complémentaires :

Pour des informations plus complètes sur GROUP_CONCAT, consultez 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