presto-获取最近一个星期六的日期



我想始终获取自当前日期以来最近的上周六的日期,我正在尝试此查询:

date_trunc('week', current_date) - interval '2' day

如果今天是星期一-星期六,这会起作用,但如果是星期天,它会在最后一个星期六而不是昨天返回。

示例:

如果我把2021-07-18作为current_date,我希望它返回2021-07-17,但它实际上返回2021-07-10。

我想这是因为presto把一周当作星期一-星期日,而不是星期日-星期六?

我该如何解决这个问题?谢谢

加两天,截断,然后减去两天:

select date_trunc('week', current_date + interval '2' day) - interval '2' day

最新更新