我可以在SSIS Merge Join中使用“Greater Than”吗?

时间:2010-12-08 01:20:44

标签: sql-server sql-server-2008 ssis

除了精确匹配之外,我没有看到任何其他选项......

1 个答案:

答案 0 :(得分:2)

使用合并连接是不可能的。 Merge Join algorithm依赖于具有两个已排序的输入集并继续如下。

get first row R1 from input 1
get first row R2 from input 2
while not at the end of either input
    begin
        if R1 joins with R2
            begin
                return (R1, R2)
                get next row R2 from input 2
            end
        else if R1 < R2
            get next row R1 from input 1
        else
            get next row R2 from input 2
    end

如果输入集是

input 1                     input 2
------                      ------
  1                           7
  2                           8
  3                           9

然后,连接input2.value > input1.value将返回9行(每个排列)。然而,使用上面的算法无法通过每个集合进行单次传递。