首页 > 解决方案 > 使用 Azure 数据流将 JSON 对象转换为数组

问题描述

我正在使用 Azure 数据流,并且我正在使用联合来组合两个源,因此这个联合包含 JSON 文档。有没有办法将此 JSON 文档转换为文档数组?

联合包含:

{"key":1,"value":"test8"}
{"key":2,"value":"test6"}
{"key":3,"value":"test3"}

我正在寻找的是一种获得这种格式的方法:

[
 {
   "key": 1,
   "value": "test8"
 },
{
 "key": 2,
 "value": "test6"
},
{
 "key": 3,
 "value": "test3"
}
]

谢谢你的帮助

标签: azureazure-data-factoryazure-data-flow

解决方案


您可以使用Aggregate转换并使用收集表达式来组合所有 JSON 文档并将其与 JSON 数据集一起传递给接收器。但这不会完全输出您正在寻找的结果,并在输出中给出聚合 名称,如下所示。

聚合

第 1 列:collect(@(key=key,value=value))

在此处输入图像描述

数据流输出

在此处输入图像描述

作为替代方案,您可以将联合 JSON 文档复制到存储中,并使用copy data活动将 JSON 文档转换为文档数组。

在此处输入图像描述

输出

在此处输入图像描述


推荐阅读