gpt4 book ai didi

mysql - 如何使用 GROUP_CONCAT 返回 JSON_ARRAY

转载 作者:行者123 更新时间:2023-11-29 06:28:52 24 4
gpt4 key购买 nike

我尝试使用“concat”和“group_concat”函数返回json对象。问题是我需要使用 group_concat 但我想要一个有效的 JSON 结构。我做错了什么?

  1. {"a":"a", "b": "b", "id": null}
  2. [{"id": "123"}]

...

SELECT JSON_REPLACE((
SELECT JSON_OBJECT(
'a', 'a',
'b', 'b',
'id', null
)), '$.id', (
SELECT CONCAT(
'[', group_concat(JSON_OBJECT(
'id',
'123')),
']'))
)

结果:{"a": "a", "b": "b", "id": "[{\"id\":\"123\"}]"}

预期:{"a": "a", "b": "b", "id": [{"id": "123"}]}

最佳答案

额外CAST ing AS JSON对于 JSON_REPLACE 的第三个参数修复了问题:

SELECT JSON_REPLACE((
SELECT JSON_OBJECT(
'a', 'a',
'b', 'b',
'id', null
)), '$.id',
CAST( CONCAT('[', GROUP_CONCAT(
JSON_OBJECT('id', '123')),
']') AS JSON )) as "Result JSON"
<表类=“s-表”><标题>结果:
{
"a": "a",
"b": "b",
"id": [
{
"id": "123"
}
]
}

Demo

关于mysql - 如何使用 GROUP_CONCAT 返回 JSON_ARRAY,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57705991/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com