我有以下表:
示例:
create table test
(
col1 varchar(10),
col2 varchar(20),
col3 varchar(30)
);
现在我想通过变量插入两个值,最后一个值通过 #temp 表。
#Temp:
create table #temp
(
col3 varchar(30)
);
#Temp: 包含
col3
-----
A1
A2
A3
插入到测试表中:
Declare @col1 varchar(10) = 'A'
Declare @col1 varchar(20) = 'B'
Declare @sql varchar(max)
SET @SQL = N'insert into test values('+@col1+','+@col2+',........);
EXEC(@SQL)
/* How to insert `@col3` from #temp to test table*/
预期结果:
col1 col2 col3
------------------
A B A1
A B A2
A B A3
注意: 变量值必须重复直到将 #temp 值插入到 test 表中为止。
INSERT INTO test (col1, col3) SELECT @col1, col3 FROM #temp
。 - Mureinik