【问题标题】:How to add Dynamic GroupBy Column in Data Flow Aggregate Activity in Azure Data Factory如何在 Azure 数据工厂的数据流聚合活动中添加动态 GroupBy 列
【发布时间】:2019-12-24 06:04:25
【问题描述】:

我正在使用数据流(预览版)。我的“聚合”活动需要一个非动态的 GroupBy 列。因此,我不能按该列分组。我只想按名称映射列。

例如: 这是两个模式: 1) 列:M Id、日期/时间、数据类型、值 2) 列:MID、日期、数据类型、单位

两者实际上具有相同的数据类型和结构。我想要 GroupBy DataType 和 avg(units)。

因为,一个字段的名称是“数据类型”,另一个是“数据类型”。我如何将它们映射在一起。

我已经用这个创建了一个“派生”活动

列:数据类型 表达式:case(startsWith(toString(byPosition(7)), 'D'), toString(byName('Data Type')),toString(byName('DataType')))

但它不起作用。非常感谢任何帮助。

我只想知道如何按名称映射列。

【问题讨论】:

    标签: azure azure-data-factory


    【解决方案1】:

    您可以直接在聚合转换的分组依据字段中编写动态表达式。将鼠标悬停在 Group By 字段上并选择“Computed Column”以进入 Expression Builder。

    【讨论】:

      【解决方案2】:

      您是在尝试确定是使用“数据类型”列还是“数据类型”列?如果是这样,只需将条件表达式直接输入到聚合组上的表达式构建器中。请注意,在上面的表达式中,您使用的是 byPosition(),它是表示传入列的数字的数值,从位置 1 开始,从左到右。这是您想要的吗?

      【讨论】:

      • 嗨,马克,非常感谢您回复我
      • 嗨,马克,非常感谢您回复我。嗨,马克,非常感谢您回复我。实际上,我没有定义架构。有两种不同类型的架构,但指向相同的数据来自 blob。 link。我收到此错误 GetCommandOutputAsync failed with Failure 2019-08-20 10:53:41.827 failed DebugManager.processJob, run=22b1d2b2-f5c3-40dc-8135-48e02f4980e7, errorMessage=DF-AGG-004 at Aggregate 'Aggregate1'(第 9 行/Col 8):未指定列 - RunId:22b1d2b2-f5c3-40dc-8135-48e02f4980e7
      • 例如:根据图像,能量和数据值都相同,但不同的列名指向 csv 文件中的相同数据。如果未定义架构,即使接收器也无法识别列名。
      • 让我们看看您的数据流设计的底层脚本。如果您不介意,请转到代码 > 计划,然后将 DSL 脚本粘贴到您的流程后面。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-06-11
      • 1970-01-01
      • 1970-01-01
      • 2020-05-01
      • 2022-01-12
      • 2020-09-15
      相关资源
      最近更新 更多