SSIS合并join的结果

我有两个数据源 – 文档和客户,我想join他们,创build行,这些信息都来自文档和客户,以customer_code为关键。

最后,我预期的30k结果中只有58个。

缺陷在哪里?

在这里输入图像说明 在这里输入图像说明

许多事情要考虑:

  1. 当导入具有混合数据types列的 excel文件时,它将用nullreplace非主导types。 (使用Oledb或Ace.Oledb)

如果Customer_code列包含多个数据types(例如Numbers,Number存储为文本),那么非显性数据types字段将被设置为null 。 所以你有一个列中的所有值都存储在Excel中相同的数据types(你必须打开excel来检查)

您可以阅读更多@ 从列中导入具有混合数据types的Excel中的数据(SSIS)

  1. 如果customer_No包含字符,则必须确保两个excel文件中的值具有相同的大小写(joinssis区分大小写) ,或者必须添加两个派生列转换,以便将Customer_Code列转换为大写字母下列expression式:

     UPPER([Customer_Code]) 
  2. 根据这篇Microsoft文章 , “在Integration Services中,Merge和Merge Join转换需要对input进行sorting的数据,input数据必须进行物理sorting,并且sorting选项必须设置在源或输出中的输出和输出列上上游转换如果sorting选项指示数据已sorting,但数据未实际sorting,则合并或合并连接操作的结果是不可预知的“

所以在合并连接之前,尝试在每个源上添加sorting组件