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

Comment puis-je convertir une table de résultats MySQL en un tableau JSON à l'aide de SQL ?

Barbara Streisand
Barbara Streisandoriginal
2024-11-30 01:45:18745parcourir

How Can I Convert a MySQL Result Table into a JSON Array Using SQL?

Création de tableaux JSON à partir de tables de résultats dans MySQL

Considérez la tâche de conversion d'une table de résultats en un tableau JSON en utilisant uniquement des commandes MySQL. Par exemple, étant donné un tableau avec les colonnes « nom » et « téléphone » :

| name | phone |
| Jack | 12345 |
| John | 23455 |

La sortie JSON souhaitée ressemblerait à :

[
  {
    "name": "Jack",
    "phone": 12345
  },
  {
    "name": "John",
    "phone": 23455
  }
]

Solution moderne :

En utilisant la fonction JSON_ARRAYAGG(), la requête suivante accomplit cela conversion :

SELECT JSON_ARRAYAGG(JSON_OBJECT('name', name, 'phone', phone)) FROM Person;

Solution héritée :

En utilisant les fonctions GROUP_CONCAT() et JSON_OBJECT(), cette requête génère le tableau JSON :

SELECT CONCAT(
    '[', 
    GROUP_CONCAT(JSON_OBJECT('name', name, 'phone', phone)),
    ']'
) 
FROM person;

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