获取一个月中除周末 postgresql 以外的所有日子



我想为 postgresql 编写一个查询 sql,它基本上可以返回我一个月中除周末以外的所有日子。

例如(11/2019(:

  • 第一周: 11/1
  • 第二周 : 11/4 -> 11/8
  • 第三周 : 11/11
  • -> 11/15
  • 福特周 : 11/18 -> 11/22
  • 第五周 : 11/25 -> 11/29

我找不到任何可以提供帮助的 postgresql 请求,这应该是自动的,而不是每次手动输入新日期。

一种方法是:

select dt 
from generate_series(date'2019-11-01', date'2019-11-30', interval '1' day) as t(dt)
where extract(dow from dt) between 1 and 5

generate_series()生成当月所有日期的列表,然后where子句仅筛选工作日。

最新更新