【问题标题】:DATE_TRUNC Starting on Sunday for SQL presto (Athena)DATE_TRUNC 从星期日开始,用于 SQL presto (Athena)
【发布时间】:2021-10-23 20:36:51
【问题描述】:

这个问题听起来很简单,但我一直无法找到直接的解决方案。我正在使用 AWS Athena,据我所知,这是一个 presto 引擎。

我有一个 TIMESTAMP 变量“created_at”。 我怎样才能让DATE_TRUNC('week', created_at) 在星期日而不是星期一开始?

我已经看到有关 %V 或 %X 作为可能解决方案的文档,但不确定在函数中的哪个位置引入它,也就是说,它是否是正确的解决方案。

基本上我想从 SUNDAY 开始按周计算销售额,到 SATURDAY 结束,我将按周分组

GROUP BY DATE_TRUNC('week', created_at) 

【问题讨论】:

    标签: sql date timestamp amazon-athena presto


    【解决方案1】:

    您可以在date_format 函数中使用它们:date_format(created_at, '%X%V')(并使用结果进行分组),但不幸的是,目前 presto 不支持它们。

    作为一种解决方法,您可以只添加一天:

    select week(created_at + interval '1' day)
    

    【讨论】:

    • 谢谢!是的,我在文档中读过'%X%V' is not supported,考虑到 athena 和 redshift 的广泛使用,这是非常不幸的:/
    猜你喜欢
    • 1970-01-01
    • 2020-07-02
    • 2019-12-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-02-05
    • 2020-08-03
    • 2020-03-21
    相关资源
    最近更新 更多