sql—比较两个表并考虑从特定表插入

20jt8wwn  于 2021-07-26  发布在  Java
关注(0)|答案(1)|浏览(359)

我们如何将一个表中的数据与另一个表进行比较?
我需要核实一下 tableA 以及 tableB :如果记录存在于 tableB ,然后考虑 tableB 的数据-如果不是,请使用 tableA 的数据-并插入到 tableC .

id    addressNumber  address2     unitno    zip
------------------------------------------------
1001    250-280      abc street             29383
1002    350-400      xyz street             29831
1003    475          hfg street             8474

表B

id    addressNumber  address2     unitno    zip
------------------------------------------------
1001    250          abc street     22      29383
1001    260          abc street     24      29383
1001    280          abc street     23      29383
1002    350          xyz street     32      29831
1002    360          xyz street     34      29831
1002    390          xyz street     39      29831

输出到表C:

id    addressNumber  address2     unitno    zip
------------------------------------------------
1001    250          abc street     22      29383
1001    260          abc street     24      29383
1001    280          abc street     23      29383
1002    350          xyz street     32      29831
1002    360          xyz street     34      29831
1002    390          xyz street     39      29831
1003    475          hfg street             8474

这里,id、addressnumber和unitno是主键

cgvd09ve

cgvd09ve1#

我想你想要:

select b.*
from b
union all
select a.*
from a
where not exists (select 1
                  from b
                  where b.id = a.id 
                 );

相关问题