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

Azure Synapse Data Flow中如何删除数组对象内的字段

在Azure Synapse Data Flow中从对象数组删除指定字段的实现方法

针对你要从Animals数组对象中删除colour字段的需求,这里提供两种实用的实现方式:

方法一:使用map() + drop()函数(推荐,灵活通用)

这是最简洁且通用的方式,适合任意数量字段的删除操作:

  • 在数据流中添加派生列转换
  • 选择目标列:如果要覆盖原数组列,就选择Animals;如果要保留原数据,可新建一列(比如ProcessedAnimals)
  • 输入以下表达式:
    map(Animals, drop(#item, 'colour'))
    
    逻辑说明:
    • map(Animals, ...):遍历Animals数组中的每一个对象(#item代表当前遍历到的对象)
    • drop(#item, 'colour'):从当前对象中移除指定的colour字段
      运行后就能得到只保留name和location的新数组。

方法二:手动重构对象数组(适合字段固定且数量少的场景)

如果数组内对象的字段固定且数量不多,也可以手动构建新对象数组:

  • 同样添加派生列转换
  • 输入表达式:
    map(Animals, createMap('name', #item.name, 'location', #item.location))
    
    逻辑说明:遍历数组中的每个对象,手动提取需要保留的字段,重新构建新的对象,最后组成新数组。

注意事项

  • 字段名区分大小写,确保表达式里的字段名和数据源中的完全一致
  • 如果需要删除多个字段,可在drop()函数中添加多个参数,比如drop(#item, 'colour', 'xxx')

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.24 11:39:59