使用Azure Data Factory将平面文件转为指定JSON格式求助
ADF数据流调整方案(实现目标JSON格式)
核心差异梳理
当前输出和期望输出的结构区别很明确:
- 当前:
to_AddressIndependentMobile是直接装着{"result": {"MobilePhoneNumber": "xxx"}}的数组 - 期望:
to_AddressIndependentMobile是一个对象,里面嵌套results数组,数组里是{"Contact": "xxx"}
具体调整步骤
1. 用派生列重构字段结构
在数据流里找到处理手机号字段的环节,加一个派生列转换:
- 派生列名直接设为
to_AddressIndependentMobile(覆盖原有字段) - 输入表达式:
create_map('results', array(create_map('Contact', MobilePhoneNumber)))
解释:用create_map生成外层的对象,array把转换后的Contact对象包成数组,同时把原字段MobilePhoneNumber重命名为Contact
2. 替换原有字段
如果之前的数据流已经生成了旧的to_AddressIndependentMobile数组,确保新派生的字段替换掉它,后续输出用这个新结构。
3. 预览验证
在数据流的数据预览里检查to_AddressIndependentMobile的结构,确认是:
{"results": [{"Contact": "010-1100-111"}]}
4. 调整输出设置
如果是用复制活动或数据流输出组件,注意JSON输出设置:
- 选「每行一个对象」(Single document per row)
- 别勾选“嵌套数组作为根”这类选项,避免结构被额外修改
最终正确输出示例
{"Name": "Test Famouns London Imaging Center","Id": 2,"to_AddressIndependentMobile": {"results": [{"Contact": "010-1100-111"}]}}
内容的提问来源于stack exchange,提问作者SaQuiB
相关产品推荐
相关产品推荐

