SQL查询转换 | AWS Glue作业

0

【以下的问题经过翻译处理】 我正在使用AWS Glue Job studio中的SQL Query Transform在我的表中新增一列。

转换的可视化图表

SQL别名 - study

当前表中字段 - study id, patient id, patient age

我想通过添加新列来转换现有Schema。

新列 - AccessionNo

转换后的模式 -study id, patient id, patient age, AccessionNo

SQL查询 - alter table study add columns (AccessionNo int)

错误提示 - pyspark.sql.utils.AnalysisException: Invalid command: 'study' is a view not a table.; line 2 pos 0; 'AlterTable V2SessionCatalog(spark_catalog), default.study, 'UnresolvedV2Relation [study], V2SessionCatalog(spark_catalog), default.study, [org.apache.spark.sql.connector.catalog.TableChange$AddColumn@1e7cbfec]

我尝试查看AWS官方文档中的SQL转换,它说查询应该是Spark SQL语法,并且我的查询也符合Spark SQL语法。 https://docs.aws.amazon.com/glue/latest/ug/transforms-sql.html

请问具体问题是什么,帮我解决一下,谢谢。

profile picture
专家
已提问 5 个月前44 查看次数
1 回答
0

【以下的回答经过翻译处理】 这样的DDL旨在更改实际目录表,而不是像“study”这样的不可变视图。

您还需要向列添加一些内容(即使是稍后填充的NULL占位符)。

如果您可以使用其他列在此处设置所需的值,那就更好了。例如:

select *, 0 as AccessionNo from study
profile picture
专家
已回答 5 个月前

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。

回答问题的准则