一段oracle中的“复杂”分组统计sql

简介: 要求: 呼叫系统(Call Center)每天会有大量的电话进线数据,领导们要查看每天的进线数汇总,并且要求把 每天从上午8点到上午12点以及下午2点到晚上8点这两个时间段的数据汇总 “视”为当天的数据。

要求:

呼叫系统(Call Center)每天会有大量的电话进线数据,领导们要查看每天的进线数汇总,并且要求把 每天从上午8点到上午12点以及下午2点到晚上8点这两个时间段的数据汇总 “视”为当天的数据。--即分组依据
 

思路:把时间段折分成连续二段,一段是从当天08:00到11:59分的数据,一段是当日12:01到19:59分的数据,然后用union all合并起来,最后再用sum求和

img_405b18b4b6584ae338e0f6ecaf736533.gif 代码
select   sum (总数) 总数,时间  from  (
  
select  
    
count (ID) 总数, 
    to_char(CallDateTime,
' yyyy-mm-dd ' ) 时间 
  
from  
    T_Test t 
  
where  to_char(CallDateTime, 'hh 24 ' ) >= '08 '   and  to_char(CallDateTime, 'hh 24 ' ) <= ' 11 '
  
group   by  to_char(CallDateTime, ' yyyy-mm-dd ' )

  
union   all  

  
select  
    
count (ID) 总数, 
    to_char(CallDateTime,
' yyyy-mm-dd ' ) 时间 
  
from  
    T_Test t 
  
where  to_char(CallDateTime , ' hh24 ' ) >= '12 '   and  to_char(CallDateTime , ' hh24 ' ) <= '19 '
  
group   by  to_char(CallDateTime, ' yyyy-mm-dd ' )
)
group   by  时间
order   by  时间

 

目录
相关文章
|
2月前
|
SQL
开启慢SQL设置long_query_time=0.1为啥会统计的sql却存在小于100毫秒的sql
开启慢SQL设置long_query_time=0.1为啥会统计的sql却存在小于100毫秒的sql
37 1
|
3月前
|
SQL 监控 Oracle
Oracle SQL性能优化全面指南
在数据库管理领域,Oracle SQL性能优化是确保数据库高效运行和数据查询速度的关键
|
3月前
|
SQL 存储 Oracle
Oracle数据库SQL语句详解与应用指南
在数字化时代,数据库已成为各类企业和组织不可或缺的核心组件。Oracle数据库作为业界领先的数据库管理系统之一,广泛应用于各种业务场景。掌握Oracle数据库的SQL语句是数据库管理员、开发人员及运维人员的基本技能。本文将详细介绍Oracle数据库SQL语句的基本概念、语法、应用及最佳实践。一、Or
94 3
|
3月前
|
SQL Oracle 关系型数据库
Oracle SQL:了解执行计划和性能调优
Oracle SQL:了解执行计划和性能调优
83 1
|
3月前
|
SQL 存储 关系型数据库
mysql 数据库空间统计sql
mysql 数据库空间统计sql
52 0
|
3月前
|
SQL
创建分组总计查询的SQL技巧与方法
在SQL中,创建分组总计查询(也称为聚合查询)是一项非常基础且重要的技能
|
5月前
|
SQL 存储 关系型数据库
SQL SERVER 查询所有表 统计每张表的大小
SQL SERVER 查询所有表 统计每张表的大小
52 0
|
5月前
|
SQL
SQL SERVER数据分组后取第一条数据——PARTITION BY
SQL SERVER数据分组后取第一条数据——PARTITION BY
189 0
|
6月前
|
SQL 关系型数据库 MySQL
MySQL获取分组里的最新数据如何写sql
MySQL获取分组里的最新数据如何写sql
68 0
|
SQL Oracle 关系型数据库
oracle用SQL Plus输入命令为什么只显示2
oracle用SQL Plus输入命令为什么只显示2
657 0
oracle用SQL Plus输入命令为什么只显示2

推荐镜像

更多