我有一个数据流任务,它执行一些脚本组件任务、排序,然后执行合并连接。我想让 Merge Join 以 1-many 的形式加入。如果我进行内部联接,我得到的记录太少:
如果我做一个左外连接,我会得到太多的记录:
我正在寻找“恰到好处”的 Goldilocks 版本(这将是 39240 条记录)。
我有一个数据流任务,它执行一些脚本组件任务、排序,然后执行合并连接。我想让 Merge Join 以 1-many 的形式加入。如果我进行内部联接,我得到的记录太少:
如果我做一个左外连接,我会得到太多的记录:
我正在寻找“恰到好处”的 Goldilocks 版本(这将是 39240 条记录)。
您可以在合并联接的左联接版本之后添加条件拆分,具有不匹配的条件,例如
isnull(tmpAddressColumn)
并将相关的匹配流条件(默认输出)发送到您的目的地。
如果仍然没有得到正确的编号,则需要检查合并连接条件并检查每个源中是否存在重复 ID。
如果您使用正确的合并连接选项,行数不应该是您用来衡量的。结果数据集应该是驱动因素。tmpManAddress 表中的结果是否正确?
对于开发,您可能希望将脚本组件的输出推送到表中,以便查看您开始使用的数据。这将允许您确定哪种类型的连接以及在哪些列上,为您提供所需的结果。