【问题标题】:Query to calculate cost by month using AWS Athena querying使用 AWS Athena 查询按月计算成本
【发布时间】:2019-07-07 22:48:00
【问题描述】:

我有一张如下表。

item_id         bill_start_date         bill_end_date           usage_amount        
635212      2019-02-01 00:00:00.000 3/1/2019 00:00:00.000   13.345      user_project
IBM

我正在尝试按每个月和每个项目查找usage_amount。 Amazon Athena 查询引擎基于 Presto 0.172。由于 Athena 的限制,它无法识别像 select sysdate from dual; 这样的查询。

我尝试将 bill_start_datebill_end_date 从时间戳转换为日期,但失败了。即使current_date() 在我的情况下也不起作用。我可以通过对值进行硬编码来计算总成本,但我的最终目标是对列执行操作。

SELECT (FLOOR(SUM(usage_amount)*100)/100) AS total,
     user_project
FROM test_table
WHERE bill_start_date
BETWEEN date '2019-02-01'
    AND date '2019-03-01'
GROUP BY  user_project;

【问题讨论】:

    标签: amazon-web-services presto


    【解决方案1】:

    在 Presto 中,current_timestamp 是一个不使用括号的 SQL 标准函数。

    要按月分组,我会使用date_trunc('month', bill_start_date)

    所有这些功能都记录在案here

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-12
    • 2019-09-16
    • 1970-01-01
    • 2020-04-13
    • 1970-01-01
    • 2018-08-03
    相关资源
    最近更新 更多