Mysql SQL查询-表克隆

Mysql SQL查询-表克隆,mysql,Mysql,我有三个表,我不知道它们是否都需要使用,但基本上我需要比较表A和表C,如果表A中有一个ID不在表C中,那么在表C中,ID将与该行另一个单元格中的值一起添加。请参见下面的示例: 原表A: ------------------------- Sku | Status ------------------------- ABC | Enabled DEF | Enabled GHI | Enabled JKL | Disabled MNO | Enabled 原始表C: --------------

我有三个表,我不知道它们是否都需要使用,但基本上我需要比较表A和表C,如果表A中有一个ID不在表C中,那么在表C中,ID将与该行另一个单元格中的值一起添加。请参见下面的示例:

原表A:

-------------------------
Sku | Status
-------------------------
ABC | Enabled
DEF | Enabled
GHI | Enabled
JKL | Disabled
MNO | Enabled
原始表C:

-------------------------
Sku | Status
-------------------------
ABC | Enabled
DEF | Enabled
GHI | Enabled
查询表C后:

-------------------------
Sku | Status
-------------------------
ABC | Enabled
DEF | Enabled
GHI | Enabled
JKL | Disabled
MNO | Disabled
问得好!! 尝试以下类似的方法:

INSERT INTO TableC (SELECT * FROM TableA WHERE TableA.id NOT IN (SELECT id FROM TableC) )

不确定mysql是否支持此语法,但这也可以:

insert into c (sku, status)
(select sku, status from a where not exists (select null from c where c.sku = a.sku))
;

这将在MySQL中工作:

INSERT INTO b 
SELECT * 
FROM a 
WHERE 
  NOT EXISTS 
     (SELECT * FROM b WHERE b.sku = a.sku);

如果表C包含一条记录,但有另一个值,该怎么办?(ABC,禁用),例如?