如何抑制 AWS Athena 查询结果中的列标题?

Jef*_*eff 5 amazon-web-services amazon-athena

我正在 S3 存储桶清单上运行 SELECT Athena 查询。然后,我想在 S3 批量操作中使用该查询的结果(.csv 格式)。

我的查询运行良好,并且我能够通过 S3 Batch 访问 .csv 输出,但由于第一行实际上是列标题,S3 Batch 会抛出不可恢复的错误,因为它认为清单现在引用多个存储桶。

如何轻松地从结果中删除列标题?我宁愿只用 SQL 来做。文件大小使得使用标准 UNIX 工具变得令人望而却步。我可以使用 AWS Glue,但这对于仅抑制 SQL 查询中的标头来说似乎有点过分了。

don*_*nkz 7

这是解决这个问题的一种巧妙方法

SELECT bucket as "my-bucket-name", key as "fakekey"
from your_athena_table
Run Code Online (Sandbox Code Playgroud)

这将使您的标头看起来像文件的其余部分,不会破坏 S3 批量复制作业。你只会有一条失败的 fakekey 记录