我有一个查询,我需要使用TimeSlots(以分钟为单位)。
说输入
Start Date : 01-08-2012 00:00:00,
End Date : 02-08-2012 00:00:00,
Interval : 5 Minutes
输出应为
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
.
.
(请忽略日期格式,因为我已找到出路) 没有表可以参考我可以在哪里获取基本时间戳并执行floor()等。
我想我们可以使用PostgreSQL库中的now()函数,但到现在为止我找不到“how?”。
提前致谢。
答案 0 :(得分: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 │
...