2009-09-30 4 views
0

비슷하지만 유사하지 않은 테이블이 2 개 있으므로 조합이 가능하지 않습니다. 나는 테이블에 약 40 개의 칼럼이 있다는 것을 염두에 두어야한다. 최선의 방법에 대한 아이디어가 있습니까?2 개의 다르지만 상당히 유사한 테이블을 결합합니다.

Table1 

ActivityCategory ActivityType Nationality Language 
--------------------------------------------------------- 
Communication  Telephone  French  French 
Meeting    Session  British  English 


Table2 

ActivityCategory ActivityType Nationality Employment 
----------------------------------------------------------- 
Communication  Fax   American  Employed 


Combined Table 

ActivityCategory ActivityType Nationality Language Employment 
---------------------------------------------------------------------- 
Communication  Telephone  French  French 
Meeting    Session  British  English 
Communication  Fax   American     Employed 

답변

5

UNION을 수행하지만 먼저 테이블을 동일한 구조로 만들어야합니다. 표에 대한 SELECT에서

, NULL 값 컬럼으로 언어를 추가, NULL 값 열 표 2에 대한 SELECT에서

으로 고용을 추가

SELECT ActivityCategory, ActivityType, Nationality, Language, NULL AS Employment 
FROM Table1 
UNION 
SELECT ActivityCategory, ActivityType, Nationality, NULL AS Language, Employment 
FROM Table1 
+0

안녕하세요, 저는 생각 했었습니다. 실제로 약 20 개의 일반적인 열만있는 약 40 개의 열이 있습니다. 나는 쉬운 길을 기다리고 있었지만 다른 방법을 모르는 한 고통스러운 접근 방법을 취해야 할 수도 있습니다. – Mitch

+0

+1, 40 열에서도 작동합니다.이 방법이 아니라면 두 개의 다른 결과 집합에서 작업 할 수 있습니다. –

+0

이 방법을 사용할 것입니다. 감사 Raj와 KM – Mitch

1

노동 조합은 가능한 것이 무엇입니까? 나중에 조합의 나머지 부분에 합류합니까?

한 번만 수행하면됩니다. 나는 그것을 할 수있는 전망을 가지고 있다고 생각한다.

1

주권의 제안은 좋은,하지만 당신은 아마 것 UNION이 아닌 UNION을하고 싶습니다. BOL에서

,

UNION ALL 결과로 모든 행을 포함합니다. 여기에는 중복 된 내용이 포함됩니다. 지정하지 않으면, 중복 행이 제거됩니다.

UNION을 사용하면 중복을 보장하기 위해 가격을 지불하지만 귀하의 경우에는 중복되지 않을 것입니다.

관련 문제