如何从SQL Server 2008中select查询结果创build一个表

我想从SQL Server中select查询结果创build一个表,我试过了

create table temp AS select..... 

但是我得到了一个错误

关键字“AS”附近的语法错误

使用以下语法在SQL Server 2008中从旧表创build新表

 Select * into new_table from old_table 

使用SELECT...INTO

SELECT INTO语句创build一个新表,并用SELECT语句的结果集填充它。 SELECT INTO可用于将来自多个表或视图的数据合并到一个表中。 它也可以用来创build一个包含从链接服务器中select的数据的新表。

例,

 SELECT col1, col2 INTO #a -- <<== creates temporary table FROM tablename 
  • 通过使用SELECT INTO插入行

标准语法,

 SELECT col1, ....., col@ -- <<== select as many columns as you want INTO [New tableName] FROM [Source Table Name] 

请注意,MSSQL: "SELECT * INTO NewTable FROM OldTable"

并不总是像MYSQL一样: "create table temp AS select.."

我认为有时候这个(在MSSQL中)并不能保证新表中的所有字段都是旧的。

例如 :

 create table oldTable (field1 varchar(10), field2 integer, field3 float) insert into oldTable (field1,field2,field3) values ('1', 1, 1) select top 1 * into newTable from oldTable 

并不总是产生:

 create table newTable (field1 varchar(10), field2 integer, field3 float) 

但可能是:

 create table newTable (field1 varchar(10), field2 integer, field3 integer) 

尝试使用SELECT INTO ….

 SELECT .... INTO TABLE_NAME(table you want to create) FROM source_table 

请尝试:

 SELECT * INTO NewTable FROM OldTable 

从[源表]中将[字段名称]select到[新build表格]