如何在 SSIS 中使用 Fill-Up,就像 Power BI 中的 Fill-Up 功能一样

Posted

技术标签:

【中文标题】如何在 SSIS 中使用 Fill-Up,就像 Power BI 中的 Fill-Up 功能一样【英文标题】:How to use Fill-Up in SSIS just like Fill-Up function in Power BI 【发布时间】:2021-10-24 14:53:00 【问题描述】:

这是我要填写的示例数据:

Here is the data

我在脚本组件中使用此代码,但它会根据我的需要填写数据:

private string LastValue = ""
 
public override void Input0_ProcessInputRow(Input0Buffer Row)
    
        if (Row.Category_IsNull == true)
        
            Row.Category = LastValue;
        
        else
        
            LastValue = Row.Category;
        

    

【问题讨论】:

SSIS 没有简单的功能来做到这一点。您可以编写一个脚本转换来做到这一点,但我现在找不到一个例子。你熟悉 C# 吗? 我在脚本转换中编写了这段代码,但这段代码填写了值,但我想填写函数这里是代码: private string LastValue = "";公共覆盖 void Input0_ProcessInputRow(Input0Buffer Row) if (Row.Category_IsNull == true) Row.Category = LastValue; else LastValue = Row.Category; 请编辑您的问题并将链接替换为一些文本示例,并包含您的上述代码。我猜要填满而不是填满,您需要以相反的顺序输入数据,对吧? 我在考虑如何反转数据流。也许添加一个行号(有点像一个身份),然后降序排序,然后应用你的代码。 @Nick.McDermaid 是的,想从下到上填充数据。 【参考方案1】:
    使用此处的逻辑添加行号...https://richardswinbank.net/ssis/adding_row_numbers_to_ssis_dataflows 对 RowNumber 进行降序排序 使用您的代码填写。

【讨论】:

我必须假设您的数据不是所有数据,并且它会以一个值而不是 null 结尾。

以上是关于如何在 SSIS 中使用 Fill-Up,就像 Power BI 中的 Fill-Up 功能一样的主要内容,如果未能解决你的问题,请参考以下文章

SQL Server SSIS 参考资料

SSIS 脚本组件阻塞

SSIS 可以输出 SQL Server Compact 4.0 文件吗?

在 SSIS 中编写案例语句

SQL SSIS转换问题

来自 Oracle 源的 SSIS