有条件拆分转换

适用于:SQL Server Azure 数据工厂中的 SSIS Integration Runtime

有条件拆分转换可以根据数据内容将数据行路由到不同的输出。 有条件拆分转换的实现类似于编程语言中的 CASE 决策结构。 此转换将计算表达式,并且根据结果将数据行定向到指定输出。 此转换还提供默认输出,因此,如果某行与任何表达式都不匹配,它会被定向到默认输出。

有条件拆分转换的配置

可以按照下列方式配置有条件拆分转换:

  • 提供一个表达式,此表达式将转换要测试的每个条件都计算为一个布尔值。

  • 指定计算条件的顺序。 顺序很重要,因为行将被发送到对应于第一个计算结果为 true 的条件的输出。

  • 指定转换的默认输出。 此转换要求指定默认输出。

每个输入行只能被发送到一个输出,即第一个计算结果为 true 的条件的输出。 例如,下列条件将 FirstName 列中以字母 A 开头的所有行定向到一个输出,将以字母 B 开头的行定向到另一个输出,将所有其他行定向到默认输出。

输出 1

SUBSTRING(FirstName,1,1) == "A"

输出 2

SUBSTRING(FirstName,1,1) == "B"

Integration Services 包含的函数和运算符可用于创建计算输入数据并定向输出数据的表达式。 有关详细信息,请参阅 Integration Services (SSIS) 表达式

有条件拆分转换包括 FriendlyExpression 自定义属性。 加载包时,可以通过属性表达式更新此属性。 有关详细信息,请参阅 在包中使用属性表达式转换自定义属性

此转换具有一个输入、一个或多个输出和一个错误输出。

可以通过 SSIS 设计器或以编程方式来设置属性。

“高级编辑器” 对话框反映了可以通过编程方式进行设置的属性。 有关可以在 “高级编辑器” 对话框中或以编程方式设置的属性的详细信息,请单击下列主题之一:

有关如何设置属性的详细信息,请单击下列主题之一:

使用有条件拆分转换拆分数据集

有条件拆分转换编辑器

可以使用 “有条件拆分转换编辑器” 对话框创建表达式,设置表达式计算顺序,以及对有条件拆分输出进行命名。 此对话框包含可以用于生成表达式的数学、字符串和日期/时间函数及运算符。 计算结果为 True 的第一个条件确定了行定向到的输出。

注意

有条件拆分转换仅将每个输入行定向到一个输出。 如果输入多个条件,则转换会将每一行发送到条件为 True 的第一个输出,而忽略各行的后续条件。 如果需要连续计算多个条件,则可能需要在数据流中连接多个有条件拆分转换。

选项

Order
选择行并使用右边的箭头键,可以更改计算表达式的顺序。

输出名称
提供输出名称。 默认为带编号的名称示例列表,不过,您也可以任选一个唯一的描述性名称。

Condition
键入表达式,或通过从可用的列、变量、函数和运算符的列表中拖动相应项来生成表达式。

此属性的值可以使用属性表达式来指定。

相关主题:Integration Services (SSIS) 表达式运算符(SSIS 表达式)函数(SSIS 表达式)

默认输出名称
为默认输出键入名称,或使用默认名称。

配置错误输出
使用 配置错误输出 对话框指定处理错误的方式。

另请参阅

数据流
Integration Services 转换