您可以在一个 "ALTER TABLE" 命令中添加多个分区吗?

Can you add more than one partition in one "ALTER TABLE" command?

我正在使用 Amazon Athena 查询存储在 S3 存储桶中的一些日志文件,并使用分区为我需要查询的文件划分一年中的几天。我想知道——因为我有一大堆天要添加到我的 table,我可以在一个 ALTER TABLE 命令中完成所有工作,还是我需要有尽可能多的 ALTER TABLE命令作为我想创建的分区数?

这是我目前使用的命令示例:

ALTER TABLE
  logfiles
ADD PARTITION
  (day='20170525')
location 's3://log-bucket/20170525/';

如果我必须对每个分区使用一个 ALTER TABLE 命令,有没有办法创建一个天数范围,然后让 Athena 循环创建分区,而不是我手动 copy/pasting 执行此命令 100 多次?

根据在 https://docs.aws.amazon.com/athena/latest/ug/alter-table-add-partition.html 找到的 Athena 文档,您 可以 向一个 ALTER TABLE 命令添加多个分区,或者去执行 athena root 和搜索添加分区。

ALTER TABLE orders ADD
  PARTITION (dt = '2016-05-14', country = 'IN') LOCATION 's3://mystorage/path/to/INDIA_14_May_2016'
  PARTITION (dt = '2016-05-15', country = 'IN') LOCATION 's3://mystorage/path/to/INDIA_15_May_2016';