PostgreSQL获取指定日期范围内的时间列表
需求:报表数据展示,精确到小时,必须所有时间都要显示出来,类似于sql中的 left join的左表,不管有没有数据,都要把日期显示出来呢
实现: select to_char(t,'YYYY-MM-DD HH24') as day_hour from generate_series('2022-10-27'::date,'2022-11-03', '1 hours') as t;
细节:其中,2022-10-27表示开始日期,2022-11-03表示结束日期,1 hours表示步进时间段为1小时
查询结果:

步进可选其它值:1 minutes表示每分钟 1 days表示每天 1 months表示每个月 1 years表示每年,比如步进1天,如下图

我这里还有一个oracle版的:点击前往
剩下的可选值自己玩去吧,我是妍妍叫我肉肉,下次发帖子不知道什么时候了,再见。

浙公网安备 33010602011771号