【发布时间】:2012-12-27 20:10:33
【问题描述】:
我正在尝试将新行插入table a 并部分加载来自table b 的数据的行。我只想在a.id 列中不存在b.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
问题:如何使用插入选择语句来做到这一点?请注意,我在一张表中包含中间名,在另一张表中包含国家/地区,以使其与我目前的情况更具可比性。有没有办法“映射”这些字段?或者我必须确保我的插入选择语句具有与目标表完全相同数量的值插入?还是只查找匹配的列名并只更新匹配的列?
【问题讨论】:
-
我已经对问题进行了更新,以准确解决我的问题 - 我可以将字段设置为彼此相等,还是必须在空白值的引号中包含确切数量的值?
..,'',..