如何创建一个表从选择查询结果在SQL Server 2008

我想创建一个表从选择查询结果在SQL Server,我尝试了

create table temp AS select.....

但是我得到了一个错误

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

1142434 次浏览

使用SELECT...INTO

SELECT INTO语句创建一个新表并填充它 SELECT语句的结果集。 SELECT INTO可用于 将来自多个表或视图的数据合并到一个表中。它也可以 控件中所选数据的新表 链接服务器。< / p >

的例子,

SELECT col1, col2 INTO #a -- <<== creates temporary table
FROM   tablename

标准的语法,

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

请尝试:

SELECT * INTO NewTable FROM OldTable
Select [Column Name] into [New Table] from [Source Table]

尝试使用SELECT INTO....

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

使用以下语法从SQL server 2008中的旧表创建新表

Select * into new_table  from  old_table
请小心点, 该软件:"SELECT * INTO NewTable FROM OldTable" < / p >

并不总是一样的 MYSQL: "create table temp AS select.." < / p >

我认为在某些情况下(在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)