Maison > base de données > tutoriel mysql > Comment convertir une table de résultats MySQL en un tableau JSON à l'aide de commandes SQL simples ?

Comment convertir une table de résultats MySQL en un tableau JSON à l'aide de commandes SQL simples ?

Patricia Arquette
Libérer: 2024-12-03 11:11:09
original
573 Les gens l'ont consulté

How to Convert a MySQL Result Table to a JSON Array Using Plain SQL Commands?

Conversion MySQL de la table de résultats en tableau JSON à l'aide de commandes simples

Dans MySQL, il est possible de convertir une table de résultats en tableau JSON en utilisant les fonctions intégrées. Considérons la requête suivante :

SELECT name, phone FROM person;
Copier après la connexion

Qui renvoie la table de résultats suivante :

name phone
Jack 12345
John 23455

Nouvelle solution :

Utilisant JSON_ARRAYAGG et JSON_OBJECT, la requête suivante obtient la sortie JSON souhaitée :

SELECT JSON_ARRAYAGG(JSON_OBJECT('name', name, 'phone', phone)) from Person;
Copier après la connexion

Le La fonction JSON_ARRAYAGG regroupe plusieurs objets JSON dans un tableau, tandis que la fonction JSON_OBJECT crée un objet avec les paires clé-valeur spécifiées.

Ancienne solution :

Alternativement, vous pouvez utilisez les fonctions CONCAT, GROUP_CONCAT et JSON_OBJECT pour construire le JSON array :

SELECT CONCAT(
    '[', 
    GROUP_CONCAT(JSON_OBJECT('name', name, 'phone', phone)),
    ']'
) 
FROM person;
Copier après la connexion

La fonction CONCAT concatène les chaînes, GROUP_CONCAT agrège les objets JSON dans une liste séparée par des virgules et JSON_OBJECT crée les objets individuels.

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 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