Maison >base de données >tutoriel mysql >Comment puis-je supprimer les doublons des résultats GROUP_CONCAT() de MySQL ?

Comment puis-je supprimer les doublons des résultats GROUP_CONCAT() de MySQL ?

DDD
DDDoriginal
2024-12-10 21:21:10180parcourir

How Can I Remove Duplicates from MySQL's GROUP_CONCAT() Results?

Filtrer les doublons dans les résultats GROUP_CONCAT() à l'aide de DISTINCT de MySQL

Dans les requêtes de base de données, la fonction GROUP_CONCAT() est fréquemment utilisée pour concaténer les valeurs de plusieurs lignes en une seule chaîne . Cependant, la chaîne résultante peut parfois contenir des valeurs en double. Pour résoudre ce problème, MySQL fournit l'attribut DISTINCT dans GROUP_CONCAT().

GROUP_CONCAT() avec DISTINCT : un exemple pratique

Considérez le tableau suivant avec une colonne « catégories » :

categories
test1 test2 test3
test4
test1 test3
test1 test3

Si nous exécutons la requête suivante :

SELECT GROUP_CONCAT(categories SEPARATOR ' ') FROM table;

Nous obtiendrons ce qui suit résultat :

test1 test2 test3 test4 test1 test3

Cependant, nous pouvons vouloir exclure les valeurs en double, ce qui entraîne :

test1 test2 test3 test4

Utiliser DISTINCT pour éliminer les doublons

Pour y parvenir, nous avons simplement ajoutez l'attribut DISTINCT à la fonction GROUP_CONCAT() :

SELECT GROUP_CONCAT(DISTINCT categories ORDER BY categories ASC SEPARATOR ' ') FROM table;

En spécifiant DISTINCT, MySQL va éliminez les valeurs en double de la chaîne concaténée, ce qui donne le résultat souhaité. Notez que la clause ORDER BY garantit que les valeurs concaténées sont triées par ordre croissant.

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