You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在ADF数据流中调整JSON输出结构以满足需求

解决ADF数据流生成目标JSON结构的方法

步骤1:用逆透视(Unpivot)转换拆分属性字段

当前数据是扁平结构,先把catalogid、manufacturer、model这类属性字段转成键值对行数据:

  1. 添加逆透视转换并连接上游数据源。
  2. 逆透视设置:
    • 保留equipmentRefId作为透视键(分组依据)。
    • 将catalogid、manufacturer、model加入逆透视字段,设置逆透视键名称为attributeName,逆透视值名称为attributeValue。
      转换后数据会变成每行对应一个属性:
    equipmentRefIdattributeNameattributeValue
    MEA-26627catalogidLITE
    MEA-26627manufacturer24.37
    MEA-26627model85401

步骤2:聚合生成attribute数组

用聚合转换把同一equipmentRefId的属性行合并为数组:

  1. 添加聚合转换连接逆透视输出。
  2. 设置分组依据为equipmentRefId。
  3. 添加聚合列attribute,使用表达式:
    collect(struct(attributeName, attributeValue))
    
    该表达式会将每个属性的键值对收集为一个数组。

步骤3:构造目标嵌套结构

用派生列转换组装最终JSON结构:

  1. 添加派生列转换连接聚合输出。
  2. 创建新列importEquipmentItem,使用表达式:
    struct(
        equipmentRefId = equipmentRefId,
        equipmentAttributes = struct(
            attribute = attribute
        )
    )
    
    此表达式会生成目标要求的嵌套对象结构。

步骤4:输出JSON文件

  1. 添加选择转换,仅保留importEquipmentItem字段,移除冗余字段。
  2. 连接JSON数据集,在输出设置中:
    • 选择单个文档(Single document),避免输出为数组结构。
    • 确保JSON格式无额外数组包裹。

完成以上步骤后,生成的JSON结构将与目标结构一致。

内容的提问来源于stack exchange,提问作者Dark S

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.07 08:37:05