【发布时间】:2012-08-10 01:07:21
【问题描述】:
您好,我正在尝试使用内部选择语句创建表...
例如:
CREATE TABLE JmxMonSer AS (SELECT * FROM services WHERE monitoring_enabled = 1);
但是一直报错:
关键字“AS”附近的语法不正确,严重性 15
请指教
【问题讨论】:
标签: sql-server sql-server-2008 create-table
您好,我正在尝试使用内部选择语句创建表...
例如:
CREATE TABLE JmxMonSer AS (SELECT * FROM services WHERE monitoring_enabled = 1);
但是一直报错:
关键字“AS”附近的语法不正确,严重性 15
请指教
【问题讨论】:
标签: sql-server sql-server-2008 create-table
我几乎可以肯定 SQL Server 没有 CREATE TABLE AS (SELECT... 语法,但您可以使用 SELECT INTO:
SELECT *
INTO JmxMonSer
FROM services
WHERE monitoring_enabled=1
检查MSDN documentation 以了解CREATE TABLE 语句的正确用法。
【讨论】:
怎么样:
SELECT * into JmxMonSer FROM services WHERE monitoring_enabled=1
如果表已经存在(并且列类型和顺序排列),您可以使用:
INSERT INTO JmxMonSer SELECT * FROM services WHERE monitoring_enabled=1
【讨论】:
以下语法用于使用子查询而不是使用静态表名... 因为有时所需的结果集来自不同的查询..
SELECT *
INTO JmxMonSer
From (SELECT * FROM services WHERE monitoring_enabled = 1) as X
【讨论】:
尝试使用SELECT INTO:
SELECT *
INTO newtable [IN externaldb]
FROM table1;
【讨论】: