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

Comment convertir des valeurs MySQL en une chaîne séparée par des virgules ?

Barbara Streisand
Libérer: 2024-11-04 18:00:03
original
581 Les gens l'ont consulté

How to Convert MySQL Values into a Comma-Separated String?

Conversion des valeurs MySQL sélectionnées en une chaîne séparée par des virgules

Lorsque vous travaillez avec MySQL, il est souvent nécessaire de récupérer des données et de les convertir en un format plus gérable. Une exigence courante consiste à transformer une liste de valeurs sélectionnées en une chaîne séparée par des virgules.

Considérez le scénario suivant : vous disposez d'une table nommée table_level avec une colonne appelée id et une colonne parent_id. Vous souhaitez sélectionner toutes les valeurs d'identifiant où parent_id est égal à 4 et les convertir en une seule chaîne séparée par des virgules.

Énoncé du problème :

Votre code initial est comme suit :

SELECT id
FROM table_level
WHERE parent_id = 4;
Copier après la connexion

Cette requête renverra correctement les valeurs d'identification, mais elle les affichera sous forme de lignes individuelles, ce qui rendra difficile leur utilisation comme une seule chaîne.

Sortie souhaitée :

La sortie souhaitée doit être au format de chaîne séparé par des virgules suivant :

"5,6,9,10,12,14,15,17,18,779"
Copier après la connexion
Copier après la connexion

Solution :

Pour obtenir le résultat souhaité, vous pouvez utiliser la fonction GROUP_CONCAT() de MySQL. Cette fonction concatène les valeurs d'une colonne spécifiée, séparées par un délimiteur spécifié. Dans ce cas, le délimiteur sera une virgule.

Requête modifiée :

SELECT GROUP_CONCAT(id)
FROM table_level
WHERE parent_id = 4
GROUP BY parent_id;
Copier après la connexion

Cette requête modifiée utilise GROUP_CONCAT() pour concaténer les valeurs d'identifiant, séparées par virgules, en une seule chaîne. La clause GROUP BY garantit que la concaténation est effectuée uniquement pour la valeur parent_id spécifiée (4 dans ce cas).

Sortie :

L'exécution de la requête modifiée produira le Sortie de chaîne souhaitée séparée par des virgules :

"5,6,9,10,12,14,15,17,18,779"
Copier après la connexion
Copier après la connexion

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