选择“插入替换局部变量”作为列

时间:2011-01-04 18:13:03

标签: sql-server variables select insert

我想将一个表中的记录插入另一个表中,如

Insert into table2([column1], [column2], [column3])  
select column1, column2, column3  
from table1

然而,不是来自表1的所有三个值,而是我想插入存储在变量中的特定值。我觉得它看起来像这样

declare @variable int
set @variable = 2

Insert into table2([column1], [column2], [column3]) 
select @variable, column2, column3  
from table1

通过这种方式,表1中的每一行都将插入到表2中,唯一的区别是第一列中的每个值都是2.

这可以不使用光标吗?

2 个答案:

答案 0 :(得分:5)

你做的方式是正确的:

INSERT INTO table2 ([column1], [column2], [column3])
SELECT @variable, column2, column3
FROM table1

答案 1 :(得分:1)

你所拥有的应该工作得很好

declare @variable int 
set @variable = 2

Insert into table2([column1], [column2], [column3]) 
select @variable, column2, column3
from table1