【问题标题】:Autofill empty rows in a column with previous nonEmpty value in azure dataflow?在 azure 数据流中使用先前的 nonEmpty 值自动填充列中的空行?
【发布时间】:2021-10-19 23:30:49
【问题描述】:
类似的东西在 Excell 中是可能的,那么它可以在 Azure 数据流中完成吗?
例子:
| Type |
Comment |
Value |
| A |
value2 |
1 |
| A |
value5 |
|
| B |
value8 |
|
| A |
value2 |
|
| A |
value5 |
2 |
| B |
value8 |
|
| C |
value2 |
3 |
| A |
value5 |
|
| B |
value8 |
4 |
决赛:
| Type |
Comment |
Value |
| A |
value2 |
1 |
| A |
value5 |
1 |
| B |
value8 |
1 |
| A |
value2 |
1 |
| A |
value5 |
2 |
| B |
value8 |
2 |
| C |
value2 |
3 |
| A |
value5 |
3 |
| B |
value8 |
4 |
【问题讨论】:
标签:
azure-data-factory
azure-data-factory-2
autofill
azure-data-flow
【解决方案1】:
您可以在数据流窗口转换中实现这一点。它需要一个用于 Over 的分区键和一个用于 Windows 设置和 Windows 列 使用的 Sort 的排序键表达式last()获取上一行Not NULL值,NULL时填写当前值。
如果您没有分区键或排序键,我们可以在数据流中生成它并将结果连接到 windows 转换。
还可以使用预开发代码 sn-p here。这段代码创建了一个
-
Derived column 使用“dummy=1”进行转换
-
Surrogate key 转换,起始值从 1 开始。
-
Windows transformation 填写值。
注意:在添加此代码sn-p之前,应在数据流中添加源代码。
- 添加来源
- 在源代码后面添加来自文档的代码sn-p。
- 此代码创建了派生列、surrogateKey、windows 转换。
-
编辑 Windows 设置 中的 Windows 列以添加需要填写的列。
coalesce(Value, last(Value, true()))
- 它用以前的非 NULL 值填充 NULL 值
- 在 sink 中,删除映射中不需要的列以获得所需的输出。