You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PostgreSQL如何实现2小时间隔分组时将12~14点数据归入14点区间

PostgreSQL 按2小时间隔分组并归入区间结束时间方案

你当前的语句使用round做四舍五入计算,导致时间被对齐到离它最近的2小时整点,而你需要的是将时间对齐到所在2小时区间的结束整点,只需要把语句中的round函数替换为向上取整的ceil函数即可。

修改后的完整SQL如下:

select code,TIMESTAMP WITHOUT TIME ZONE 'epoch' +
INTERVAL '1 second' * ceil(extract('epoch' from created_at) / 7200) * 7200 as created_at,COUNT ("active" ) as active
from "otp"
GROUP BY "code", ceil(extract('epoch' from created_at) / 7200)

修改后分组逻辑完全匹配你的需求:

  • 11:59:36属于10:00~12:00区间,对齐到结束时间12:00:00
  • 12:00:0013:59:59之间的所有时间属于12:0014:00区间,对齐到结束时间14:00:00

内容的提问来源于stack exchange,提问作者Divyesh Jesadiya

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 03:06:00