2016-12-22 1 views
0

하나의 그룹 (Groupabcd)에서 다른 기존 그룹 (GroupEFGH)으로 위치를 이동할 SQL 쿼리를 작성하려고합니다. 모든 직책은 'holdings'테이블에 보관됩니다.SQL - 한 포트폴리오에서 다른 위치로 이동

최종 결과는 GroupABCD에 남아 있지 않아야합니다.

예)

현재 테이블 :

GroupABCD 
Holdings: 
Google 
Apple 
IBM 

GroupEFHG 
Holdings: 
Facebook 
Twitter 

최종 결과 :

GroupABCP: 
No Holdings 

GroupEFHG: 
Holdings: 
Facebook 
Twitter 
Apple 
Google 
IBM 
+0

포스트 스키마. –

+0

테이블 정의 방법이 완전히 명확하지 않습니다. ** [edit] ** 귀하의 질문을하고 해당 테이블에 대한 create table 문을 추가하십시오. 또한 : 어떤 DBMS를 사용하고 있습니까? –

+0

스키마 설정을 게시하고이 작업을 수행하려고 시도한 방법을 게시하십시오. 오히려 간단한 업데이트 명령이어야합니다. – MageeWorld

답변

0

시도 :

DECLARE @toDelete TABLE (del_Holdings NVARCHAR(100)) 
MERGE GroupEFHG t 
USING GroupABCD s 
ON t.Holdings= s.Holdings 
WHEN NOT MATCHED BY TARGET THEN 
    INSERT (Holdings) 
    VALUES (s.Holdings) 
OUTPUT 
    INSERTED.Holdings into @toDelete; 

DELETE ABCD FROM GroupABCD ABCD INNER JOIN @toDelete on Holdings = del_Holdings 
관련 문제