“合并”活动可用于连接两个已排序的输入。 左输入和右输入必须均按照指定排序关键字进行排序,然后您才能合并或连接输入。您必须为左输入及右输入至少指定一个排序关键字。“合并”活动可以解决任何重复项。
合并类型 | 描述 |
---|---|
合并且除去重复项 | 除去同时在左和右输入中出现的重复项。Studio 会将所有重复项发送到 RemainderXML 元素。 |
合并且保留左重复项 | 将左侧输入中的重复项发送到 RemainderXML 元素。 |
合并且保留所有重复项 | 保留两个输入中的重复项。 |
内连接 | 基于指定关键字来连接输入。未参与连接的所有行都会发送到 RemainderXML 元素。 |
左外连接 | 基于指定关键字来连接输入。即使左侧输入中的行未参与连接,合并输出仍会保留这些行。Studio 会将右侧输入中未参与连接的行发送到 RemainderXML 元素。 |
全部外连接 | 基于指定关键字来连接输入。合并输出会保留连接未涉及的行。 |
表 1 是本示例中的左侧和右侧输入。表 2 是“合并”活动支持的各类合并操作的期望结果。
在以下示例中,x 是关键变量。 Studio 会将已合并或已连接的条目发送到 mergeXML 元素,并会将未参与合并或连接的所有条目发送到 RemainderXml 元素。
左输入 | 右输入 |
---|---|
<entries> <entry x="1" y="10"/> <entry x="2" y="20"/> <entry x="2" y="21"/> <entry x="3" y="30"/> </entries> |
<entries> <entry x="0" z="00"/> <entry x="2" z="22"/> <entry x="2" z="23"/> <entry x="4" z="40"/> </entries> |
合并类型 | 合并结果 |
---|---|
合并且除去重复项 | <entries> <entry x="0" z="00"/> <entry x="1" y="10"/> <entry x="3" y="30"/> <entry x="4" z="40"/> </entries> |
合并且保留左重复项 | <entries> <entry x="0" z="00"/> <entry x="1" y="10"/> <entry x="2" y="20"/> <entry x="2" y="21"/> <entry x="3" y="30"/> <entry x="4" z="40"/> </entries> |
合并且保留所有重复项 | <entries> <entry x="0" z="00"/> <entry x="1" y="10"/> <entry x="2" y="20"/> <entry x="2" y="21"/> <entry x="2" z="22"/> <entry x="2" z="23"/> <entry x="3" y="30"/> <entry x="4" z="40"/> </entries> |
内连接 | <entries> <entry x="2" y="20" z="22"/> <entry x="2" y="20" z="23"/> <entry x="2" y="21" z="22"/> <entry x="2" y="21" z="23"/> </entries> |
左外连接 | <entries> <entry x="1" y="10"/> <entry x="2" y="20" z="22"/> <entry x="2" y="20" z="23"/> <entry x="2" y="21" z="22"/> <entry x="2" y="21" z="23"/> <entry x="3" y="30"/> </entries> |
全部外连接 | <entries> <entry x="0" z="00"/> <entry x="1" y="10"/> <entry x="2" y="20" z="22"/> <entry x="2" y="20" z="23"/> <entry x="2" y="21" z="22"/> <entry x="2" y="21" z="23"/> <entry x="3" y="30"/> <entry x="4" z="40"/> </entries> |