我有两个分别名为tbl_A和tbl_B的表。我想在tbl_A中存在记录时将一条记录插入tbl_B中。是否有单个sql语句呢?我认为INSERT INTO .. ON DUPLICATE KEY UPDATE不是我想要的。
答案 0 :(得分:1)
您可以使用WHERE EXISTS实现此目的。这是一个示例,但您想要的可能更多一些,但是可以。
INSERT INTO contacts
(id, name)
SELECT supp_id, supp_name
FROM suppliers
WHERE EXISTS (SELECT *
FROM orders
WHERE suppliers.supp_id = orders.supp_id);