(PostgreSql)根据给定的开始日期,结束日期和间隔(以分钟为单位)计算时隙

Anu*_*tel 3 postgresql datetime

我有一个查询,我需要使用TimeSlots(在几分钟内).

说输入是

Start Date : 01-08-2012 00:00:00,
End Date : 02-08-2012 00:00:00,
Interval : 5 Minutes
Run Code Online (Sandbox Code Playgroud)

输出应该是

2012-08-01 00:00:00.0
2012-08-01 00:05:00.0
2012-08-01 00:10:00.0
2012-08-01 00:15:00.0
.
.
Run Code Online (Sandbox Code Playgroud)

(请忽略日期格式,因为我已经找到了解决方法)没有参考表可以从哪里获取基本时间戳并执行floor()等.

我想我们可以使用PostgreSQL库中的now()函数但是我找不到"怎么样?" 直到现在.

提前致谢.

gre*_*reg 8

嗯,这是我爱Postgres的原因之一:

SELECT generate_series(
   '01-08-2012 00:00:00'::timestamp, 
   '02-08-2012'::timestamp,
   '5 minutes'::interval);


  ???????????????????????
  ?   generate_series   ?
  ???????????????????????
  ? 2012-01-08 00:00:00 ?
  ? 2012-01-08 00:05:00 ?
  ? 2012-01-08 00:10:00 ?
  ? 2012-01-08 00:15:00 ?
  ? 2012-01-08 00:20:00 ?
  ...
Run Code Online (Sandbox Code Playgroud)