SQL Server创建表问题-消息156

时间:2018-09-21 13:28:12

标签: sql-server

我正在尝试使用另一个表创建一个表。这是我的代码:

CREATE TABLE new_table
  AS (SELECT CASE_ID
  FROM old_table);

我收到此错误:

  

第15层状态1的第2行156消息   关键字“ AS”附近的语法不正确。

有什么建议吗?

2 个答案:

答案 0 :(得分:1)

有两种方法可以做到这一点:

SELECT CASE_ID INTO new_table FROM old_table;

CREATE TABLE new_table (case_id int);
INSERT INTO new_table SELECT CASE_ID FROM old_table;

前者似乎与您现在尝试的内容更接近,但后者对于更复杂的表定义很有用,其中包括诸如NULL限制,约束,键等之类的东西。

答案 1 :(得分:0)

Sql将以某种方式支持表的创建

SELECT CASE_ID
into new_table
  FROM old_table;

或创建new_table并将行从这样的旧表插入新表

create table new_table
(
CASE_ID int
)

insert into new_table(CASE_ID)
SELECT CASE_ID

      FROM old_table