【发布时间】:2020-10-14 12:07:32
【问题描述】:
我想使用 S3 存储桶在 athena 中创建一个表,但首先我想知道是否有任何方法可以将子目录的名称(文件的源数据)作为新列桌子。如果是这样,我应该使用哪种语法?如果这不可能,我至少需要该新列中文件的路径。
Power BI 中的映射需要子目录名称。
提前谢谢你!
【问题讨论】:
标签: amazon-s3 path powerbi subdirectory amazon-athena
我想使用 S3 存储桶在 athena 中创建一个表,但首先我想知道是否有任何方法可以将子目录的名称(文件的源数据)作为新列桌子。如果是这样,我应该使用哪种语法?如果这不可能,我至少需要该新列中文件的路径。
Power BI 中的映射需要子目录名称。
提前谢谢你!
【问题讨论】:
标签: amazon-s3 path powerbi subdirectory amazon-athena
来自Find the Source File for an Athena Table Row:
- 要找出哪个 Amazon S3 文件包含由 Athena 表中的特定行返回的数据,请运行
SELECT $path查询。- 要找出与特定 Amazon S3 文件相关联的 Athena 表行,请使用
WHERE $path条件运行 SELECT 查询。
来自CREATE EXTERNAL TABLE - Amazon Redshift:
默认情况下,Amazon Redshift 使用伪列
$path和$size创建外部表。选择这些列可查看 Amazon S3 上数据文件的路径以及查询返回的每一行的数据文件大小。$path和$size列名必须用双引号分隔。SELECT *子句不返回伪列。您必须在查询中明确包含$path和$size列名称,如以下示例所示:
select "$path", "$size"
from spectrum.sales_part
where saledate = '2008-12-01';
【讨论】: