1

Table2 から Table1 に一致する行をコピーするために使用されたこの挿入ステートメントの例があります。

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

このステートメントが機能していたとき、両方のテーブルに FirstName、LastName、および EmailAddr1 という同じ 3 つの列がありました。

その後、Table2 には表示されない列 EmailAddr2 を Table1 に追加しました。変更した挿入ステートメントが期待どおりに機能することを確認したいと考えています。

これで私の目標は達成されますか?

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 に答える