SSIS合并join的结果
我有两个数据源 – 文档和客户,我想join他们,创build行,这些信息都来自文档和客户,以customer_code为关键。
最后,我预期的30k结果中只有58个。
缺陷在哪里?
许多事情要考虑:
- 当导入具有混合数据types列的 excel文件时,它将用nullreplace非主导types。 (使用Oledb或Ace.Oledb)
如果Customer_code列包含多个数据types(例如Numbers,Number存储为文本),那么非显性数据types字段将被设置为null
。 所以你有一个列中的所有值都存储在Excel中相同的数据types(你必须打开excel来检查)
您可以阅读更多@ 从列中导入具有混合数据types的Excel中的数据(SSIS)
-
如果customer_No包含字符,则必须确保两个excel文件中的值具有相同的大小写(joinssis区分大小写) ,或者必须添加两个派生列转换,以便将
Customer_Code
列转换为大写字母下列expression式:UPPER([Customer_Code])
-
根据这篇Microsoft文章 , “在Integration Services中,Merge和Merge Join转换需要对input进行sorting的数据,input数据必须进行物理sorting,并且sorting选项必须设置在源或输出中的输出和输出列上上游转换如果sorting选项指示数据已sorting,但数据未实际sorting,则合并或合并连接操作的结果是不可预知的“
所以在合并连接之前,尝试在每个源上添加sorting组件