2016-06-23 3 views
-1

Я использую SSIS 2008 R2 в течение нескольких недель, и я застрял в этот момент.Слияние с предпочтительным источником

Мне нужно объединить две таблицы из двух разных SQL-серверов в новую таблицу.

Это то, что я пытаюсь достичь:

Таблица 1:

Name  Price Quantity 
------------------------ 
Item 1 23  5 
Item 2 50  2 
Item 3 30  10 

Таблица 2:

ID Name  Price Quantity 
------------------------------ 
101 Item 1  60  7 
203 Item 3  80  15 

Результат:

ID Name  Price Quantity 
------------------------------------- 
101 Item 1 60  7 
NULL Item 2 50  2 
203 Item 3 80  15 

Я пытался использовать слияние, но это дублирует пункт 1 и пункт 3.

Я пытаюсь создать его в Development Studio, так что нет реального кода, который я могу показать. This is what I've created

+0

Просьба указать код, который вы пробовали до сих пор. –

+0

Добавьте код, который вы написали, который вызывает дубликаты, поэтому мы можем помочь его отладить. –

ответ

0
Select T2.ID, T1.Name,Price=case when isnull(T1.Price,0)>isnull(T2.Price,0) then 
isnull(T1.Price,0) else isnull(T2.Price,0) end, 
Quantity=case when isnull(T1.Quantity,0)>isnull(T2.Quantity,0) 
then isnull(T1.Quantity,0) else isnull(T2.Quantity,0) end 
from Table1 T1 
left outer join Table2 T2 on T1.Name=T2.Name 
+0

Если вы хотите получить запрос между таблицей другого сервера, тогда свяжите этот сервер с сервером .. –

+0

[OtherServerName]. [OtherDB]. [Dbo]. [OtherTable] –

Смежные вопросы