我正在尝试将新行插入table a
并部分加载带有来自table b
. 我只想在列b.id
中不存在该字段的地方插入新行a.id
。
这是我的表:
table_a table_b
--------- -----------
id id
first_name first_name
country middle_name
last_name last_name
这是我的代码:
INSERT INTO table_a a
SELECT b.id, b.first_name,b. last_name
FROM table_b b WHERE b.id <> a.id
问题:如何使用插入选择语句来做到这一点?请注意,我在一张表中包含中间名,在另一张表中包含国家/地区,以使其与我目前的情况更具可比性。有没有办法“映射”这些字段?或者我必须确保我的插入选择语句具有与目标表完全相同数量的要插入的值?还是它只会查找匹配的列名并只更新那些匹配的列?