Azure Data Factory中如何将指定行列值替换为另一列最大值
Azure Data Factory实现指定行替换需求的解决方案
需求说明
输入数据:
Key col3 ----------- 1 5 2 6 3 7
需实现:仅当Key=1时,将col3的值替换为Key列的最大值(示例中为3),最终输出:
Key col3 --------- 1 3 2 6 3 7
具体实现步骤
- 添加聚合转换:在数据流中插入聚合转换,选择"不分组"模式,添加聚合规则:
MaxKey = max(Key),这一步会生成仅包含MaxKey字段的单行数据(即Key列的最大值)。 - 添加查找转换:将原始数据集作为查找的源,聚合后的数据集作为查找源,连接类型选择"左外连接",无需设置匹配条件(目的是给原始数据的每一行都带上
MaxKey字段)。 - 添加派生列转换:使用
iif表达式实现替换逻辑,表达式为:iif(Key == 1, MaxKey, col3),将该表达式的结果映射到col3字段(覆盖原有值)即可。
内容的提问来源于stack exchange,提问作者Debashis
相关产品推荐
相关产品推荐

