程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> SSIS 系列 - Merge, Merge Join, Union All 合並組件的使用

SSIS 系列 - Merge, Merge Join, Union All 合並組件的使用

編輯:關於SqlServer

SSIS 系列 - Merge, Merge Join, Union All 合並組件的使用以及Sort 排序組件同步異步的問題

SSIS Data Flow 中有幾個組件可以實現不同數據源的數據合並功能,比如 Merger, Merge Join 和 Union All。它們的功能比較類似,同時也比較容易混淆,下面是對它們之間的區別的對比總結。

下面通過三個 Data Flow 來演示這三個組件的使用以及相關的配置。

測試數據源 -

第一個數據源是一張表

USE BIWORK_SSIS
GO
    
-- Merge demo table
IF OBJECT_ID('DEMO_MG_Customer','U') IS NOT NULL
DROP TABLE DEMO_MG_Customer
GO
    
CREATE TABLE DEMO_MG_Customer
(
  CustomerID INT PRIMARY KEY,
  CustomerCompany NVARCHAR(255),
  CustomerName NVARCHAR(20),
  CustomerAddress NVARCHAR(255)
)
    
INSERT INTO DEMO_MG_Customer VALUES
(1,'HFBZG','Allen,Michael','Obere Str. 0123'),
(2,'MLTDN','Hassall, Mark','Avda. de la Constitución 5678'),
(3,'KBUDE','Peoples, John','Mataderos  1000')
    
SELECT * FROM DEMO_MG_Customer

第二個數據源是一個文本文件

ID,Company,CustomerName,Title,Address

1,'NRZBB','Allen,Michael','Sales Representative','Obere Str. 0123'

2,'MLTDN','Hassall, Mark','Owner','Avda. de la Constitución 5678'

3,'KBUDE','Peoples, John','Owner','Mataderos  7890'

4,'HFBZG','Arndt, Torsten','Sales Representative','7890 Hanover Sq.'

5,'HGVLZ','Higginbotham, Tom','Order Administrator','Berguvsvgen  5678'

示例一 - 使用 Merge 來合並數據

上面已經說了 Merge 的特點-

輸入數據源 - 兩個

輸入數據源 - 表或者文件等

合並時要求元數據相同,數據類型相同

合並前需要排序

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved