Maison > base de données > tutoriel mysql > le corps du texte

Comment trier les valeurs dans une instruction MySQL GROUP_CONCAT ?

Patricia Arquette
Libérer: 2024-11-19 10:24:02
original
456 Les gens l'ont consulté

How do I sort values in a MySQL GROUP_CONCAT statement?

Tri des valeurs dans MySQL GROUP_CONCAT

Dans MySQL, la fonction GROUP_CONCAT() concatène les valeurs d'une table, regroupées par une colonne spécifique. Cependant, le comportement par défaut consiste à afficher les valeurs dans l'ordre dans lequel elles apparaissent dans le tableau. Ce n'est pas toujours le résultat souhaité, surtout lorsque vous avez besoin de trier les valeurs concaténées.

Pour trier les valeurs dans une instruction GROUP_CONCAT, vous pouvez utiliser la clause ORDER BY dans la sous-requête. Par exemple, considérons la requête suivante :

GROUP_CONCAT((SELECT GROUP_CONCAT(parent.name SEPARATOR " » ")
FROM test_competence AS node, test_competence AS parent
WHERE node.lft BETWEEN parent.lft AND parent.rgt
  AND node.id = l.competence
  AND parent.id != 1
ORDER BY parent.lft) SEPARATOR "<br /><\n") AS competences
Copier après la connexion

Cette requête renvoie les valeurs concaténées des noms de compétences parents, triées par ordre croissant.

Crafts &raquo; Joinery

Administration &raquo; Organization
Copier après la connexion

En spécifiant la clause ORDER BY dans la sous-requête, nous pouvons contrôler la séquence des valeurs concaténées. Cela offre un moyen flexible de présenter les résultats dans un ordre personnalisé, les rendant plus lisibles et organisés.

N'oubliez pas que la clause ORDER BY doit être placée entre parenthèses de la sous-requête qui suit GROUP_CONCAT(). Cela permet à MySQL de trier les valeurs avant de les concaténer en une seule chaîne.

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal