SQL INSERT INTO来自多个表

这是我的表1:
NAME       AGE        SEX        CITY             ID

Clara      22         f          New York         1
Bob        33         m          Washington       2
Sam        25         m          Boston           3

这是我的表2:

NUMBER       ID
555-1111     1
555-2222     2
555-3333     3

现在我想要一张表3,显示所有信息:

NAME       AGE        SEX        CITY             ID        NUMBER

Clara      22         f          New York         1         555-1111
Bob        33         m          Washington       2         555-2222
Sam        25         m          Boston           3         555-3333

我首先尝试在表3中插入表1中的值,然后将表2中的值插入到表3中,其中Id = Id的内部连接.

INSERT INTO table3 { name,age,sex,city,id}
SELECT name,id
FROM table 1



INSERT INTO table3 { name,id,number}
SELECT name,number
FROM table 2 p
INNER JOIN table 3 c ON c.Id = p.Id

但我所得到的是我的价值观的重复.而不是有3个条目,我有9个条目,其中一些有数字为null,一些只有数字,其余为零,一些是正确的.

我希望有人能帮助我

编辑

如果我现在有这样一个第三个表:

NATIONALITY       ID

Canadian          1
American          2
french            3

如何将所有3个表合并成一个表?

解决方法

你只需要一个INSERT:
INSERT INTO table3 ( name,number,nationality)
SELECT name,p.id,n.nationality
FROM table1 p
INNER JOIN table2 c ON c.Id = p.Id

相关文章

SELECT a.*,b.dp_name,c.pa_name,fm_name=(CASE WHEN a.fm_n...
if not exists(select name from syscolumns where name=&am...
select a.*,pano=a.pa_no,b.pa_name,f.dp_name,e.fw_state_n...
要在 SQL Server 2019 中设置定时自动重启,可以使用 Window...
您收到的错误消息表明数据库 'EastRiver' 的...
首先我需要查询出需要使用SQL Server Profiler跟踪的数据库标...