Sql 如何比较两个表并在比较后在表A中插入值
如果表B中有任何额外值,我需要比较两个表,如果有,则应将其插入表a中 如何以最有效的方式做到这一点 表ASql 如何比较两个表并在比较后在表A中插入值,sql,sql-server,tsql,Sql,Sql Server,Tsql,如果表B中有任何额外值,我需要比较两个表,如果有,则应将其插入表a中 如何以最有效的方式做到这一点 表A Column A Column B Column Flag Maths John Y Science John Y English George Y 表B Column A Column B Maths John Science John English George Japanese George 最有效的方法是什么?你的
Column A Column B Column Flag
Maths John Y
Science John Y
English George Y
表B
Column A Column B
Maths John
Science John
English George
Japanese George
最有效的方法是什么?你的尝试有什么无效之处?如果从
B
在A
中插入了'Japanese',则该行的标志的值是多少?是否要比较表A
和B
,或者是否有其他表要与B
进行比较?如何处理单个表中的重复行?嘿,loldude,谢谢你的回答。请阅读。虽然你的代码可能会回答这个问题,但好的帖子会解释为什么/如何解决这个问题。
with cte as(
Select B.*
From TableB B
Left Join TableA A
On A.[Column A] = B.[Column A]
And A.[Column B] = B.[Column B]
Where NULLIF(A.[Column A], '') Is Null)
Insert Into TableA([Column A], [Column B], [Column Flag])
Select*, null -- or assign whatever value you want to column 3
From cte