我有一个如下表。
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。由于雅典娜的限制,它无法识别类似select sysdate from dual;
的查询。
我尝试将bill_start_date
和bill_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;
答案 0 :(得分:1)
在Presto中,current_timestamp
是不使用括号的SQL标准函数。
要按月分组,我将使用date_trunc('month', bill_start_date)
。
所有这些功能均已记录在here
中