Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ssis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SSIS-仅基于结果导出列_Ssis - Fatal编程技术网

SSIS-仅基于结果导出列

SSIS-仅基于结果导出列,ssis,Ssis,我使用SSIS是为了基于TSQL代码创建csv文件 我遇到的一个问题是,如果TSQL代码中存在特定的数据段,csv文件应该只创建特定的列 例如,我正在导出属性列表。这些属性可以有许多调整 使用一个属性可以具有的许多调整之一-一个是楼梯提升。所以在我的TSQL SELECT语句中,我将有一个列,它只是一个true或false结果 如果为真,则在CSV列上,我希望导出相应的楼梯提升列 如果它为false,那么我根本不希望楼梯电梯的柱处于导出状态 如何在SSIS中实现这一点,我感到困惑——欢迎提供任何

我使用SSIS是为了基于TSQL代码创建csv文件

我遇到的一个问题是,如果TSQL代码中存在特定的数据段,csv文件应该只创建特定的列

例如,我正在导出属性列表。这些属性可以有许多调整

使用一个属性可以具有的许多调整之一-一个是楼梯提升。所以在我的TSQL SELECT语句中,我将有一个列,它只是一个true或false结果

如果为真,则在CSV列上,我希望导出相应的楼梯提升列

如果它为false,那么我根本不希望楼梯电梯的柱处于导出状态

如何在SSIS中实现这一点,我感到困惑——欢迎提供任何建议


提前感谢

最好的方法是,使用脚本组件,用C#编写条件语句,并使用所需的列列表创建CSV

For Each row As DataRow In _BufferTable.Rows
    Output0Buffer.AddRow()
    If row.IsNull("Column1") Then
        Output0Buffer.Column1_IsNull = True
    Else
        Output0Buffer.Column1 = CType(row.Item("Column1"), Double)
    End If
Next

否则,使用条件拆分和动态派生列名是很痛苦的。

我必须远离C#-在这方面我没有任何技能。基本上SSIS要求在设计时定义列和映射,并且不能更改。你必须使用某种编码来实现这一点。这里有一些powershell可能会满足您的需要:…您可以将SQL结果合并到一个列中以加载CSV文件吗?这将带来不同的结果