【发布时间】:2019-07-22 20:55:45
【问题描述】:
如何找到一年中nth 周的第一天的日期?例如,以下所有查询:
SELECT DATE_PART('WEEK', '2019-07-22 01:12:07'::timestamp);
SELECT DATE_PART('WEEK', '2019-07-23 01:12:07'::timestamp);
SELECT DATE_PART('WEEK', '2019-07-24 01:12:07'::timestamp);
给 30,因为这三个日期是 2019 年的第 30 周。
我的问题是如何做相反的事情。在我的 SQL 版本中,周从星期一开始(如果您从星期日开始,这不是问题 - 我可以进行调整)因此第 30 周的第一天是 2019-07-22(今天,也就是星期一)。如何输入周数 30 并获取该周的第一天,即 2019-07-22(或 07-21,如果您的 SQL 中一周的第一天是星期日)
【问题讨论】: