SQL - 将位置从一个投资组合移动到另一个投资

时间:2016-12-22 15:15:03

标签: sql

我正在尝试编写一个SQL查询,它将位置从一个组(Groupabcd)移动到另一个组(GroupEFGH)。所有职位都保存在名为' holdings'

的表格中

最终结果应该在GroupABCD中没有任何位置。

例)

当前表:

GroupABCD
Holdings:
Google
Apple
IBM

GroupEFHG
Holdings: 
Facebook
Twitter

结束结果:

GroupABCP:
No Holdings

GroupEFHG:
Holdings:
Facebook
Twitter
Apple
Google
IBM

1 个答案:

答案 0 :(得分: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