AWS Athena [Presto] 如何仅接收过去 7 天的数据?
Posted
技术标签:
【中文标题】AWS Athena [Presto] 如何仅接收过去 7 天的数据?【英文标题】:AWS Athena [Presto] How to receive data from the past 7 days only? 【发布时间】:2021-05-09 05:57:49 【问题描述】:我经历了多个类似的线程,但由于某种原因仍然无法使其正常工作。我有这个查询,目前正在从一月份的 stage_date 中提取所有数据,但我希望能够仅获取过去一周(7 天)的数据。当我对与此类似的问题完成其他一些答案时,我收到一个错误,例如 > cannot be applied to varchar, date 或类似的东西。 (当我将 > currentdate 公式放入查询中时)
select reason_code, service_category, stage_date,
case when reason_code LIKE 'UAR'
then 'Unauthorized Return'
else 'FALSE'
end as "reason_long",
case when service_category like 'CRED'
then 'Credit Approved'
else 'FALSE'
end as "service_long"
from "table.name"
where
stage_date like '01%'
order by customer_name,
stage,
reason_code
【问题讨论】:
stage_date的数据类型是什么?请使用 WHERE 和当前日期展示您的尝试 【参考方案1】:如果 stage_date 是字符串类型,则将其转换为日期:
WHERE date(stage_date) >= current_date() - INTERVAL 7 DAY
【讨论】:
以上是关于AWS Athena [Presto] 如何仅接收过去 7 天的数据?的主要内容,如果未能解决你的问题,请参考以下文章
Presto(AWS Athena)中 datefromparts 的替代方法是啥
AWS Athena (Presto) DISTINCT SQL 查询中的重复结果?
Presto (AWS Athena) 中的拆分和搜索逗号分隔列