我的 SQL 创建表为语法错误 [重复]

Posted

技术标签:

【中文标题】我的 SQL 创建表为语法错误 [重复]【英文标题】:Syntax Error with my SQL Create Table As [duplicate] 【发布时间】:2015-04-20 17:23:03 【问题描述】:

我正在尝试基于两个现有表在 Microsoft SQL Server Management Studio 中创建一个新表。

当我执行下面的查询时,我收到一条错误消息,提示有:

关键字“SELECT”附近的语法不正确。

SQL 代码:

CREATE TABLE NEW_TABLE AS
 SELECT OLD_TABLE.A
    , OLD_TABLE.B
    , OTHER_OLD_TABLE.C
 FROM OLD_TABLE
 INNER JOIN OTHER_OLD_TABLE
 ON OLD_TABLE.A = OTHER_OLD_TABLE.D;

我查看了其他各种问题,但找不到解决方案。你知道语法有什么问题吗?

【问题讨论】:

SQL Server 的语法是SELECT ... INTO new table FROM.... 你的例子代表了mysql的语法。 谢谢,我没有意识到。为重复的帖子道歉 - 绝对是我的困惑的结果。 不用道歉。社区在这里为您指出好的答案。它们可能已经存在。 【参考方案1】:

或者,您可以像这样使用SELECT * INTO new_table 语句。

SELECT OLD_TABLE.A
, OLD_TABLE.B
, OTHER_OLD_TABLE.C INTO NEW_TABLE
FROM OLD_TABLE
INNER JOIN OTHER_OLD_TABLE
ON OLD_TABLE.A = OTHER_OLD_TABLE.D;

此语句还将根据您的需要创建一个新表。

【讨论】:

以上是关于我的 SQL 创建表为语法错误 [重复]的主要内容,如果未能解决你的问题,请参考以下文章

SQLSTATE [42000]:语法错误或访问冲突:1064 您的 SQL 语法有错误 — PHP — PDO [重复]

带有 INSERT OUTPUT 的 SQL 语法错误 [重复]

使用带参数的 LIKE 时 SQL 引发语法错误 [重复]

MariaDB 未知语法错误。制作一个简单的表格[重复]

PL/SQL:语法错误

即使创建表的语法正确,我的 sql 中也会出现错误 1064