1

我有这个示例插入语句,用于将匹配的行从 Table2 复制到 Table1:

INSERT INTO Table1 SELECT * FROM Table2 WHERE ID='555'

当此语句起作用时,两个表都具有相同的三列,FirstName、LastName 和 EmailAddr1。

我已经在 Table1 中添加了一个列 EmailAddr2,它没有出现在 Table2 中,并且我想确保我修改后的插入语句能够按预期工作。

这会实现我的目标吗?

SELECT @EmailAddr2 = 'bill@mail.gov'
INSERT INTO Table1 SELECT FirstName, LastName, EmailAddr1, @EmailAddr2 
  FROM Table2 WHERE ID='555'
4

1 回答 1

3

你应该做:

declare @emailAddr2 varchar(50)
set @emailAddr2 = 'Bill@mail.gov'

Insert into Table1 ( firstname, lastname, emailaddr1, emailaddr2 ) 
select firstname, lastname, emailaddr1, @emailAddr2
from table2 where id = '555'
于 2013-01-31T18:14:31.403 回答