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

Azure ADF数据流排除指定对象后输出JSON结构异常的解决方法咨询

Azure ADF 数据流提取指定JSON结构的替代方案

针对你需要排除record和contractNumbers对象、仅保留{"report":{"metadata":{...}}}结构的需求,以下是几种可行的解决方法:

1. 使用Select转换直接投影目标字段

Select转换是处理字段筛选最直接的工具:

  • 在数据流中添加Select转换并连接数据源
  • 进入映射配置界面,删除所有默认映射,手动添加新映射:
    • 源路径选择record.report
    • 输出字段名设为report
  • 保存配置后,输出将直接生成预期的JSON结构,自动剔除无关对象

2. Derived Column + Select 组合使用

如果之前用Derived Column只添加了report字段但未移除原有字段,需要配合Select完成最终筛选:

  • 在Derived Column转换中,添加表达式:report = record.report,生成包含目标结构的新字段
  • 紧接着添加Select转换,仅保留report字段,删除所有其他字段映射
  • 这样输出就只会包含你需要的report对象

3. 使用Parse转换解析后提取

若原始JSON是以字符串形式存储的,可先解析再提取:

  • 添加Parse转换,将原始JSON字符串字段解析为结构化对象(指定输出类型为Document)
  • 后续用Derived Column提取record.report到report字段,再通过Select保留该字段

4. 管道级使用Lookup + JSON函数预处理

如果处理的是存储中的JSON文件,也可以在管道层面完成提取:

  • 添加Lookup活动,读取目标JSON文件的内容
  • 用表达式@activity('Lookup').output.value[0].Content.record.report直接提取所需结构
  • 将提取结果通过Copy活动写入目标存储

补充说明

你之前尝试的Filter转换是用于过滤行数据的,无法实现字段级的排除;而单独使用Derived Column只会新增字段,不会移除原有字段,因此需要配合Select转换完成最终的字段筛选。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.14 10:09:55