博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Oracle按时间段分组统计
阅读量:5355 次
发布时间:2019-06-15

本文共 1891 字,大约阅读时间需要 6 分钟。

想要按时间段分组查询,首先要了解level,connect by,oracle时间的加减. 

关于level这里不多说,我只写出一个查询语句:

----level 是一个伪例   select level from dual connect by level <=10   ---结果:1      2  3  4  5  6  7  8  9  10

 

关于connect by可以看 

 
oracle时间的加减看看试一下以下sql语句就会知道:

select sysdate -1 from dual  ----结果减一天,也就24小时  select sysdate-(1/2) from dual  -----结果减去半天,也就12小时  select sysdate-(1/24) from dual  -----结果减去1 小时  select sysdate-((1/24)/12) from dual   ----结果减去5分钟  select sydate-(level-1) from dual connect by level<=10  ---结果是10间隔1天的时间

 

下面是本次例子:

select dt, count(satisfy_degree) as num from T_DEMO  i ,  (select sysdate - (level-1) * 2 dt  from dual connect by level <= 10) d  where i.satisfy_degree='satisfy_1' and  i.insert_time
d.dt-2 group by d.dt

 

例子中的sysdate - (level-1) * 2得到的是一个间隔是2天的时间 

group by d.dt  也就是两天的时间间隔分组查询

 

自己实现例子:

create table A_HY_LOCATE1(  MOBILE_NO          VARCHAR2(32),  LOCATE_TYPE        NUMBER(4),  AREA_NO            VARCHAR2(32),  CREATED_TIME       DATE,  AREA_NAME          VARCHAR2(512),);

select (sysdate-13)-(level-1)/4 from dual connect by level<=34  --从第一条时间记录开始(sysdate-13)为表中的最早的日期,“34”出现的分组数(一天按每六个小时分组 就应该为4)

 

一下是按照每6个小时分组   

select mobile_no,area_name,max(created_time ),dt, count(*) as num from a_hy_locate1  i ,(select (sysdate-13)-(level-1)/4  dtfrom dual connect by level <= 34) dwhere i.locate_type = 1 andi.created_time
d.dt-1/4group by mobile_no,area_name,d.dt

 

另外一个方法:

--按六小时分组select trunc(to_number(to_char(created_time, 'hh24')) / 6),count(*)  from t_test where created_time > trunc(sysdate - 40) group by trunc(to_number(to_char(created_time, 'hh24')) / 6)--按12小时分组select trunc(to_number(to_char(created_time, 'hh24')) / 6),count(*)  from t_test where created_time > trunc(sysdate - 40) group by trunc(to_number(to_char(created_time, 'hh24')) / 6)

出处:http://blog.csdn.net/wanglipo/article/details/6556665

转载于:https://www.cnblogs.com/mq0036/p/3701776.html

你可能感兴趣的文章
hive 语法 case when 语法
查看>>
Ajax:js读取txt内容(json格式内容)
查看>>
Task 7 买书最低价格问题
查看>>
Selenium3+python自动化007-警告框
查看>>
html5 相同形状的图形进行循环
查看>>
springboot中文官方文档
查看>>
lamdba表达式
查看>>
ThreadLocal实现线程范围内共享
查看>>
多校HDU5723 最小生成树+dfs回溯
查看>>
ASP.NET MVC分页实现之改进版-增加同一个视图可设置多个分页
查看>>
关于ASP.NET MVC开发设计中出现的问题与解决方案汇总 【持续更新】
查看>>
关于Entity Framework中的Attached报错的完美解决方案终极版
查看>>
Selenium之Web页面滚动条滚操作
查看>>
组合数据类型练习,英文词频统计实例上
查看>>
Uber回馈开源的一些软件
查看>>
day 3 修改haproxy.cfg 作业
查看>>
UIScrollView —— 缩放实现案例(二)
查看>>
【Qt】Qt Linguist介绍【转】
查看>>
sim usim Uim 区别
查看>>
网页中插入透明Flash的方法和技巧
查看>>