用sql语句过滤最近时间段的数据怎么写?

记录最近一小时,比如10点多累计10点到11点的,11点又从0开始累计11点到12点的

selsct*from 表名 

此身非 发布于 2020-11-9 10:15
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共5回答
最佳回答
0
ColdmanLv6高级互助
发布于2020-11-9 10:18(编辑于 2020-11-9 10:21)
select * from table where to_char(时间字段,'hh24') = to_char(sysdate,'hh24')

不就是时间在10点多的时候统计10:00-10.59的数据吗?那就是判断小时数相等的数据就取出来,如果还要判断日期就是

to_char(sysdate,'yyyy-mm-dd hh24')


最佳回答
0
豆豆小可爱Lv5中级互助
发布于2020-11-9 10:17

where 时间 between 当前时间精确到小时 and 当前时间当前时间精确到小时+1

不知道你的数据库是啥,仅供参考

最佳回答
0
yiyemeiyingLv4高级互助
发布于2020-11-9 10:19

开窗函数-逐层累计-http://help.finereport.com/finereport9.0/doc-view-1960.html

逐层累计-https://help.fanruan.com/finereport/doc-view-348.html

======

SQL端就用开窗函数实现,报表端用层次坐标实现,文档都有讲解;

最佳回答
0
shirokoLv6资深互助
发布于2020-11-9 10:21

between 当前小时0分 and 下个小时0分

或者 小时数=当前小时数

不同数据库,语法不一样,看数据库的把。

比如oracle 

where to_char(时间,'yyyy-mm-dd hh24:')=to_char(sysdate,'yyyy-mm-dd hh24:')

最佳回答
0
18121815297Lv2见习互助
发布于2020-11-9 10:24

你是想实时查询最近一个小时的,还是想以一个小时的分组查询出来


  • 6关注人数
  • 764浏览人数
  • 最后回答于:2020-11-9 10:24
    请选择关闭问题的原因
    确定 取消
    返回顶部