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ヶ月前47ビュー
1回答
0

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

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

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

select *, 0 as AccessionNo from study
profile picture
エキスパート
回答済み 5ヶ月前

ログインしていません。 ログイン 回答を投稿する。

優れた回答とは、質問に明確に答え、建設的なフィードバックを提供し、質問者の専門分野におけるスキルの向上を促すものです。

質問に答えるためのガイドライン

関連するコンテンツ