oracle日期分组查询的完整实例
程序员文章站
2022-07-06 17:19:11
前言在做数据报表时,需要对某一时间段分组,以1小时为时间间隔统计各项数据,如9点-10点,10点-11点…,但是现在有种情况,时间有可能不是整点开始,会有半点的情况,9点30,需要按照9点30-10点...
前言
在做数据报表时,需要对某一时间段分组,以1小时为时间间隔统计各项数据,如9点-10点,10点-11点…,但是现在有种情况,时间有可能不是整点开始,会有半点的情况,9点30,需要按照9点30-10点30,10点30-11点30分组统计
实现
以时间范围起始时间作为参照时间,计算与其差值(分)/所需时间间隔(1小时)
得出值作为分组依据。
例子
select xx, floor( floor( (refdate-to_date('2021-02-05 08:30','yyyy-mm-dd hh24:mi:ss')) * 24 * 60) / 60 ) factor where refdate >=to_date('2021-02-05 08:30','yyyy-mm-dd hh24:mi:ss') and refdate <=....
floor:取整用
refdate:每条数据中的日期字段
2021-02-05 08:30:参照时间
factor:算出的分组依据
以上查询范围是21:30-23:30,以21.30作为参照时间,可将时间段划分为21.30-22:30,22:30-23:30。。
在此基础上查询时间所属时间段
以上通过 factor/24 含义为间隔一小时, 可以通过改变这两个值任意组合时间间隔。
总结
到此这篇关于oracle日期分组查询的文章就介绍到这了,更多相关oracle日期分组查询内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
推荐阅读
-
Oracle中查询本月星期5的所有日期列表的语句
-
Android开发实现查询远程服务器的工具类QueryUtils完整实例
-
asp.net(C#)实现功能强大的时间日期处理类完整实例
-
Oracle 获取上周一到周末日期的查询sql语句
-
oracle,mysql,SqlServer三种数据库的分页查询的实例
-
oracle使用to_date查询一周的第一天日期
-
Oracle中查询本月星期5的所有日期列表的语句
-
Oracle数据库根据时间范围查询时间范围内的年,月,日以及一天的24小时(实例)
-
Oracle与MySQL的分页查询sql语句格式实例讲解
-
Oracle的NVL函数用法、Oracle递归查询实例讲解