我在SQL Anywhere 17中有一个简单的查询,一栏两行:
SELECT
1 AS tag,
null AS parent,
row_num AS [enc_obj!1!row_num]
FROM
sa_rowgenerator(1, 2)
ORDER BY
3
FOR JSON EXPLICIT;
我得到的结果是,每行都有一个单独的数组的数组:
[
{
"enc_obj": [
{
"row_num": 1
}
]
},
{
"enc_obj": [
{
"row_num": 2
}
]
}
]
如何修改查询以获取其中包含所有行的单个数组,如下所示:
{
"enc_obj": [
{
"row_num": 1
},
{
"row_num": 2
}
]
}
有什么想法吗?
您可以简单地从json指令中忽略enc_obj
标准:
SELECT
1 AS tag,
null AS parent,
row_num AS [!1!row_num] -- NOTE: "enc_obj" is dropped!
FROM
sa_rowgenerator(1, 2)
ORDER BY
3
FOR JSON EXPLICIT;
因此,您将获得一个匿名JSON数组without一个封装对象:
[
{
"row_num": 1
},
{
"row_num": 2
}
]
您可以使用吗?