使用SQL从covid_deaths表聚合数据建表时遭遇语法错误
问题排查与解决:SQL语法错误"Incorrect syntax near the keyword 'from'"
错误原因
从covid_data..covid_deaths的表引用格式可判断你使用的是SQL Server,而SQL Server不支持CREATE TABLE ... AS SELECT(CTAS)语法——该写法是MySQL、PostgreSQL等数据库的专属语法,SQL Server对应的表创建+数据插入语法为SELECT ... INTO。
修正后的SQL语句
SELECT SUM(new_cases) AS total_cases, SUM(CAST(new_deaths AS INT)) AS total_deaths, SUM(CAST(new_deaths AS INT))/SUM(New_Cases)*100 AS death_percentage INTO tableau_table_1 FROM covid_data..covid_deaths WHERE continent IS NOT NULL -- 若需要按日期分组统计,可取消下方注释并调整逻辑 -- GROUP BY date -- ORDER BY 1,2
补充说明
- 若
tableau_table_1已存在,需先删除该表,或改用INSERT INTO ... SELECT语法(前提是目标表结构与查询结果字段匹配) - 确保
new_deaths字段的所有值都能安全转换为INT类型,避免出现转换失败的报错
内容的提问来源于stack exchange,提问作者Travis Dunn
相关产品推荐
相关产品推荐

