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

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

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

  1. id addressNumber address2 unitno zip
  2. ------------------------------------------------
  3. 1001 250-280 abc street 29383
  4. 1002 350-400 xyz street 29831
  5. 1003 475 hfg street 8474

表B

  1. id addressNumber address2 unitno zip
  2. ------------------------------------------------
  3. 1001 250 abc street 22 29383
  4. 1001 260 abc street 24 29383
  5. 1001 280 abc street 23 29383
  6. 1002 350 xyz street 32 29831
  7. 1002 360 xyz street 34 29831
  8. 1002 390 xyz street 39 29831

输出到表C:

  1. id addressNumber address2 unitno zip
  2. ------------------------------------------------
  3. 1001 250 abc street 22 29383
  4. 1001 260 abc street 24 29383
  5. 1001 280 abc street 23 29383
  6. 1002 350 xyz street 32 29831
  7. 1002 360 xyz street 34 29831
  8. 1002 390 xyz street 39 29831
  9. 1003 475 hfg street 8474

这里,id、addressnumber和unitno是主键

cgvd09ve

cgvd09ve1#

我想你想要:

  1. select b.*
  2. from b
  3. union all
  4. select a.*
  5. from a
  6. where not exists (select 1
  7. from b
  8. where b.id = a.id
  9. );

相关问题