PostgreSQL小组在中午24小时到中午

时间:2014-03-11 13:21:56

标签: sql postgresql grouping aggregation

使用PostgreSQL我需要能够在24小时内从中午到中午聚合数据,如标题所示。在几周的时间内每5分钟收集一次数据,我想平均从第一天中午12:00到第二天中午12点24小时的读数,直到数据结束。

对于更标准的午夜到午夜分组,我可以使用下面的示例,它运行得很好,但我看不出如何将其调整到我需要的正午时间范围。

group by date_trunc('day', <DateCol>)

PostgreSQL对我来说相对较新,如果我打算在SQL Server中执行此操作,我会使用:

dateadd(hour, (datepart(hour, <DateCol>)/12)*12, dateadd(day, 0, datediff(day, 0, <DateCol>)))

据我在http://www.postgresql.org阅读文档时所知,没有与date add等效的内容。有没有办法在PostgreSQL中做必要的事情?

1 个答案:

答案 0 :(得分:2)

尝试按日分组 - 12小时:

group by date_trunc('day', <DateCol> - INTERVAL '12 hours')