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

如何在Azure Data Factory/Synapse中扁平化多维数组并提取email

在Azure Data Factory/Synapse中提取多维数组中的email字段生成CSV

方法一:数据流(Data Flow)实现(推荐)

针对多维数组结构,正确配置Flatten活动即可完成解析:

  • 配置源数据集:指向目标JSON文件,在源设置的JSON path中填入$.input.values,直接定位到多维数组的根节点
  • 添加第一层Flatten活动:在Unroll by选项中选择最外层数组字段,将第一层数组展开为单条记录
  • 添加第二层Flatten活动:针对展开后的子数组字段,再次在Unroll by中选择该子数组,完成第二层数组的展开,此时每个包含email的对象会成为独立行
  • 添加Select活动:仅保留email字段,删除其他无关列
  • 配置CSV接收器:设置输出路径,开启First row as header(如需表头),完成输出

方法二:Lookup活动结合复制活动实现

适合小数据量场景,步骤如下:

  • 添加Lookup活动:源指向JSON文件,读取完整的JSON内容
  • 解析多维数组:在后续活动的表达式中,用嵌套遍历提取所有email字段,示例表达式:
    @concat('"email"', '\n', join(flatten(foreach(item(activity('Lookup').output.value[0].input.values), foreach(item(item()), if(contains(item(), 'email'), item().email, '')))), '\n'))
    
  • 写入CSV:添加复制活动,源选择Inline dataset,将上述表达式结果作为输入内容;接收器选择CSV数据集,设置输出路径即可

注意事项

  • 若存在空email记录,可在数据流中添加Filter活动,过滤掉email为空的行
  • 数据流方法支持大数据量处理,性能优于Lookup方案,优先推荐

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.12 08:53:12