将表A中的列映射到表B中的对应列

时间:2013-09-07 22:38:12

标签: mysql

第1部分:

在MySQL中假设我有表A,其列数多于表B.我想将表B中的值传输到表A,其中A中的 id 行与 id B中的行,并从表B中的值更新表A中的值。

第2部分:

表B是表A的超集,那么如何将表B中的 ids 及其对应的插入到表A中,同时还更新 id < / strong>在表A中。

enter image description here

1 个答案:

答案 0 :(得分:0)

与评论中已经提到的FreshPrinceOfSO一样,您不会在这里免费获得代码。

但这里至少是步骤。两种可能性。您可以将工作拆分为两个语句,一个更新然后一个插入语句。或者你可以使用

INSERT ... ON DUPLICATE KEY UPDATE ...

您必须在表格上有一个唯一索引才能生效。

对于提到的第一个解决方案,您首先inner join update的表格,这是微不足道的。然后,对于insert,您使用select left joinis null检查表格中尚未包含的条目。

祝你好运......