我已经建立了一个假期表,其中包含从 2000 年到 2050 年的所有公共(public)假期。但我应该也放上所有周末日期,现在我正试图找到一种方法。有人可以提出建议吗?我查了一下,有计算工作日数的函数,但我需要插入这两年之间的所有周末。
最佳答案
如果是 8.4+:
select
a::date as Sunday,
a::date - 1 as Saturday
from generate_series('2000-01-02'::date, '2050-12-31', '7 days') s(a)
;
否则:
select
'2000-01-02'::date + s.a as Sunday,
'2000-01-02'::date + s.a - 1 as Saturday
from generate_series(0, '2050-12-31'::date - '2000-01-02'::date, 7) s(a)
;
关于PostgreSQL - 插入从 xxxx 年到 yyyy 年的所有周末日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6625281/