如何使用 MySql 中的嵌套元素生成 JSON
How to generate JSON with nested elements from MySql
我有 table 这样的:
+----+-------+-------+--------------+
| id | title | city | street |
+----+-------+-------+--------------+
| 1 | First | London| Oxford |
+----+-------+-------+--------------+
| 2 | Second| Berlin| Nievenheimer |
+----+-------+-------+--------------+
这是一种编写 MySql 查询的方法,它将生成带有嵌套元素的 JSON 输出。类似这样:
{
1: {
"title": "First",
"address": {
"city": "London",
"street": "Oxford"
}
},
2: {
"title": "Second",
"address": {
"city": "Berlin",
"street": "Nievenheimer"
}
}
}
您可以使用json生成函数:
select json_object_agg(
id,
json_object(
'title', title,
'address', json_object('city', city, 'street', street)
)
) res
from mytable
我有 table 这样的:
+----+-------+-------+--------------+
| id | title | city | street |
+----+-------+-------+--------------+
| 1 | First | London| Oxford |
+----+-------+-------+--------------+
| 2 | Second| Berlin| Nievenheimer |
+----+-------+-------+--------------+
这是一种编写 MySql 查询的方法,它将生成带有嵌套元素的 JSON 输出。类似这样:
{
1: {
"title": "First",
"address": {
"city": "London",
"street": "Oxford"
}
},
2: {
"title": "Second",
"address": {
"city": "Berlin",
"street": "Nievenheimer"
}
}
}
您可以使用json生成函数:
select json_object_agg(
id,
json_object(
'title', title,
'address', json_object('city', city, 'street', street)
)
) res
from mytable