INSERT INTO TableA(ID, QTY)
SELECT X.ID, 0 QTY FROM TableB X
LEFT OUTER JOIN TableA Y ON X.ID = Y.ID
WHERE Y.ID IS NULL
或 如果您想用两个表中的数据创建一个新表,那么使用下面的sql
INSERT INTO NewTable(ID, QTY)
SELECT X.ID, 0 QTY FROM TableB X
LEFT OUTER JOIN TableA Y ON X.ID = Y.ID
WHERE Y.ID IS NULL
UNION ALL
SELECT ID, QTY FROM TableA
使用not in
INSERT INTO TableA(ID, QTY)
SELECT X.ID, 0 QTY FROM TableB X
WHERE X.ID NOT IN (SELECT ID FROM TableA WHERE ID IS NOT NULL)
2条答案
按热度按时间fumotvh31#
你可以使用连接或者不使用连接,
使用联接
将tableb连接到tablea并选择所有不存在的id,然后将其插入tablea
或
如果您想用两个表中的数据创建一个新表,那么使用下面的sql
使用not in
ltqd579y2#
另一个选项是相关子查询和
NOT EXITS
.