首页 >数据库 >mysql教程 >如何使用 SQL 将 MySQL 结果表转换为 JSON 数组?

如何使用 SQL 将 MySQL 结果表转换为 JSON 数组?

Barbara Streisand
Barbara Streisand原创
2024-11-30 01:45:18759浏览

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

从 MySQL 中的结果表创建 JSON 数组

考虑仅使用 MySQL 命令将结果表转换为 JSON 数组的任务。例如,给定一个包含“name”和“phone”列的表:

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

所需的 JSON 输出将类似于:

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

现代解决方案:

利用 JSON_ARRAYAGG() 函数,以下查询完成此操作转换:

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

旧解决方案:

使用 GROUP_CONCAT() 和 JSON_OBJECT() 函数,此查询生成 JSON 数组:

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

以上是如何使用 SQL 将 MySQL 结果表转换为 JSON 数组?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn