【发布时间】:2019-03-02 16:38:29
【问题描述】:
我希望 MySQL 以 JSON 数组的形式返回结果集。
一个有效的查询:
SELECT CONCAT(
'[',
GROUP_CONCAT(
JSON_OBJECT(
'ProductId', tblproducts.ProductId,
'ProductName', tblproducts.ProductName
)
),
']') As Products
FROM tblproducts;
此查询返回以下 JSON 数组:
[
{
"ProductId": "1",
"ProductName": "Milk"
},
{
"ProductId": "2",
"ProductName": "Bread"
}
]
虽然这段代码有效,但我有一种强烈的感觉,即使用 GROUP_CONCAT 和 CONCAT 构建 JSON 数组是一种解决方法。如果使用JSON_ARRAY,结果集将由每个JSON_OBJECT 的JSON 数组组成。
我的问题:
是否有任何本机方法可以获取结果集中所有 JSON_OBJECT 的单个 JSON 数组?
【问题讨论】: