抱歉,如果这样的问题已经存在,我到目前为止还没有找到。
我有两个表,产品
和价格
。
在我的产品
表中,我有许多产品(数千种),但在价格
中,我只为少数产品设置了价格。
连接它们的列称为code
(在两个表中)。
我需要进行一个 INSERT 查询,为 prices
中没有行的每个 product
插入一行到 prices
中。
如何才能实现这一目标?
最佳答案
您可以将 INSERT INTO ... SELECT
与 EXISTS
子句一起使用:
INSERT INTO prices (code, col1, col2, ...)
SELECT code, col1, col2, ...
FROM products p1
WHERE NOT EXISTS (SELECT 1 FROM prices p2 WHERE p1.code = p2.code);
关于mysql - SQL:插入table_b,其中table_a没有相关行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55666645/