【问题标题】:SQL Server programming error: incorrect syntax near the keyword 'SELECT'SQL Server 编程错误:关键字“SELECT”附近的语法不正确
【发布时间】:2021-01-07 17:24:36
【问题描述】:

由于某种原因,当我尝试运行此程序时出现编程错误:

CREATE TABLE BTS_songs_10M_likes 
AS
    SELECT Song, "Views(M)", "Views_in_first_24_hrs(M)", Release_Date
    FROM BTS_top_10_songs
    WHERE "Likes(M)" > 10
    ORDER BY "Likes(M)" DESC, "Views(M)" DESC;

错误:

mssql+pyodbc://sa:**@SQL (pyodbc.ProgrammingError) ('42000', "[42000] [Microsoft][ODBC SQL Server Driver][SQL Server]关键字'SELECT'附近的语法不正确。(156) (SQLExecDirectW)")
[SQL: /
为点赞数超过 1000 万的 BTS 歌曲创建一个表(不包括“喜欢(M)”和“不喜欢(M)”列)*/
创建表 BTS_songs_10M_likes AS
选择歌曲,“Views(M)”,“Views_in_first_24_hrs(M)”,Release_Date
FROM BTS_top_10_songs
WHERE "赞(M)" > 10
按“喜欢(M)”DESC、“浏览量(M)”DESC 排序;]
(此错误的背景:http://sqlalche.me/e/13/f405)

我该如何解决这个错误,这个错误的原因是什么?

我正在使用 SQL Server 2019

【问题讨论】:

  • 你不能创建这样的表。没有CREATE TABLE AS .... SELECT。您是否尝试创建视图?
  • SELECT INTO
  • @PanagiotisKanavos link 这个网站的最后一部分说我可以创建这样的表
  • 所以这个网站是错误的。这不会是第一次。为什么不检查 SQL Server 的文档呢?如果要创建一个填充查询结果的表,请使用 SELECT INTO
  • 好的,谢谢,我将使用 SELECT INTO 代替

标签: sql-server pyodbc


【解决方案1】:

您使用的是哪个版本的 SQL Server?语法“CREATE TABLE AS”不适用于 SQL Server 2008 和更早版本。如果是这种情况,请使用语法SELECT INTO

【讨论】:

  • 我使用的是 SQL Server 2019
  • 没有 SQL Server 版本支持CREATE TABLE AS SELECT
猜你喜欢
  • 2018-08-02
  • 1970-01-01
  • 1970-01-01
  • 2016-08-23
  • 2013-12-16
  • 1970-01-01
  • 1970-01-01
  • 2020-12-18
相关资源
最近更新 更多