Mysql 实现百万记录检查逻辑时的Oracle查询问题

Mysql 实现百万记录检查逻辑时的Oracle查询问题,mysql,sql,oracle,Mysql,Sql,Oracle,我有一张桌子 code_Value key_value Description 12 12 Entry_Category5 13 rrtt Entry2 20 tht Entry6 20 trt Wntry9 表A以类似的方式显示了数百万条记录 表B中实现了一个逻辑,它使用表A作为源 Code_value Key_value

我有一张桌子

 code_Value   key_value  Description
  12          12         Entry_Category5
  13          rrtt         Entry2
  20          tht          Entry6
  20          trt          Wntry9
表A以类似的方式显示了数百万条记录

表B中实现了一个逻辑,它使用表A作为源

Code_value   Key_value       Description
    12          12            Entry_Category5

    13          rrtt          Entry2
    13          13            Null value

    20          tht            Entry6
    20          trt            Entry9
    20          20             Null value
逻辑是,在表A中,如果我有一个条目,其中代码不等于key,那么我以前代码的一个新条目将被复制,key作为代码,description必须为null。 这个逻辑必须应用于一百万条记录。我只想有一个sql查询,它将 帮助我。由于有更多记录,请建议尝试:

insert into table_b
select
    code_value,key_value,description
from
    table_a
where 
    code_value = key_value
union
select
    code_value,code_value,null
from 
    table_a
where 
    code_value != key_value

这是MySQL还是Oracle?