0

我已经建立了一个假期表,其中包含从 2000 年到 2050 年的所有公共假期。但我也应该把所有周末日期都放好,现在我正试图找到一种方法。有人可以提出一些建议吗?我检查并有计算工作日数的功能,但我需要插入这两年之间的所有周末。

4

1 回答 1

4

如果 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)
;
于 2011-07-08T14:41:05.890 回答