Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 从临时表插入到表中_Sql_Sql Server_Sql Server 2008 R2_Sql Insert - Fatal编程技术网

Sql 从临时表插入到表中

Sql 从临时表插入到表中,sql,sql-server,sql-server-2008-r2,sql-insert,Sql,Sql Server,Sql Server 2008 R2,Sql Insert,我有下表: 示例: create table test ( col1 varchar(10), col2 varchar(20), col3 varchar(30) ); create table #temp ( col3 varchar(30) ); col1 col2 col3 ------------------ A B A1 A B A2 A B A3 现在,我想通过变量插入两个值,并通过临时表插入最后一

我有下表:

示例

create table test
(
 col1 varchar(10),
 col2 varchar(20),
 col3 varchar(30)
);
create table #temp
(
  col3 varchar(30)
);
col1   col2   col3
------------------
A      B      A1
A      B      A2
A      B      A3
现在,我想通过变量插入两个值,并通过临时表插入最后一个值

#温度

create table test
(
 col1 varchar(10),
 col2 varchar(20),
 col3 varchar(30)
);
create table #temp
(
  col3 varchar(30)
);
col1   col2   col3
------------------
A      B      A1
A      B      A2
A      B      A3
#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*/
预期结果

create table test
(
 col1 varchar(10),
 col2 varchar(20),
 col3 varchar(30)
);
create table #temp
(
  col3 varchar(30)
);
col1   col2   col3
------------------
A      B      A1
A      B      A2
A      B      A3

注意:变量值必须重复,直到将#temp值插入表测试。

您可以使用insert select语句:

INSERT INTO test
SELECT @col1, @col2, col3
FROM   #temp

如果我想插入测试(col1,col3),该怎么办?不是col2只需在insert中指定所需的列:
insert-INTO-test(col1,col3)选择@col1,col3 FROM#temp
很好的答案,简单有效。