Teradata SQL中的自定义日期范围

时间:2017-08-02 20:36:18

标签: sql date teradata dayofweek sql-date-functions

有人可以帮我创建自定义周视图吗?我有一张桌子,每天给我销售,但希望能够将它们视为每周的总和。

我遇到问题的地方是我需要一周来显示星期五到星期四的数据。

我在另一个论坛上找到了这段代码:

CASE WHEN ((Table_date - (000101 (DATE))) + 1) MOD 7 = 6 THEN Table_date + 6
    ELSE   Table_date + (6 - (((Table_date - (000101 (DATE))) + 1) MOD 7+1 )) 
    END AS fri_week_ending_date            

哪个可以计算一个星期五的结束日期,但是有人知道如何在周四结束时调整它吗?我已经尝试了所有可以猜到的选项,但我的数据似乎已经关闭了。或者,如果有更简单的方法来创建这些自定义周视图,我愿意接受任何想法!谢谢!

1 个答案:

答案 0 :(得分:0)

您现有的计算过于复杂。

NEXT_DAY返回下一个工作日:

Next_Day(Table_date-1, 'fri') 

必须Table_date-1返回星期五的同一日期。

周四只需切换到Next_Day(Table_date-1, 'thu'): - )