Mysql 将缺少的ID和价格从一个表复制到另一个表

Mysql 将缺少的ID和价格从一个表复制到另一个表,mysql,Mysql,我有表A包含1800条记录和表B包含800条记录。我想将缺少的ID+价格从表A复制到表B 两个表具有不同的列。公共列是ID 我已经开始构建查询,但我不知道如何知道只复制哪些列 到目前为止,我有这个 INSERT INTO productprice SELECT products.productID, products.rrp FROM products LEFT OUTER JOIN productprice ON productprice.productID = products.produc

我有
表A
包含1800条记录和
表B
包含800条记录。我想将缺少的ID+价格从
表A
复制到
表B

两个表具有不同的列。公共列是
ID

我已经开始构建查询,但我不知道如何知道只复制哪些列

到目前为止,我有这个

INSERT INTO productprice
SELECT products.productID, products.rrp FROM products
LEFT OUTER JOIN productprice ON productprice.productID = products.productID
WHERE productprice.productID IS NULL;
问题还在于,我要复制的第二列值是
rrp
列,从
表A
复制到
表B
中的
列。基本上:

products.productID
products.rrp
->
productprice.productID
productprice.price
此查询应该可以工作

INSERT INTO productprice (productID, price)
SELECT productID, rrp
FROM products
WHERE (productID, rrp) NOT IN 
   (SELECT productID, price
    FROM productprice);
下面是演示:

此查询应该可以运行

INSERT INTO productprice (productID, price)
SELECT productID, rrp
FROM products
WHERE (productID, rrp) NOT IN 
   (SELECT productID, price
    FROM productprice);
下面是演示:

应该可以:

INSERT INTO productprice(id,rrp) SELECT products.productID, products.rrp FROM products LEFT OUTER JOIN productprice ON productprice.productID = products.productID WHERE productprice.productID IS NULL;
通过在insert语句中指定列。现在,如果表中有一些其他必需的列,那么这将不起作用。

这应该可以:

INSERT INTO productprice(id,rrp) SELECT products.productID, products.rrp FROM products LEFT OUTER JOIN productprice ON productprice.productID = products.productID WHERE productprice.productID IS NULL;
通过在insert语句中指定列。现在,如果表中有一些其他必需的列,那么这将不起作用