我需要将Week转换为以周日开始(范围为1-53,今年为周日)
例如DATE_PART(w,'2020-01-05')(星期日) 这应该返回2而不是1。
谢谢。
答案 0 :(得分:0)
如果您希望获取从星期一(而不是星期日)开始的一周的周号:
因此,使用:
DATE_PART(w, date_field - INTERVAL '1 DAY')
这将返回“前一天”的周号。
不幸的是,它不适用于一年的第一天,而这似乎是上一年的最后一天。视您的组织如何处理一年中的前几周/后几周而定。
如果不能令人满意,则可以编写自己的用户定义函数(UDF)并对其进行编码,以返回所需的值。