复杂的sql语句,按部门统计人数:

--按部门统计人数
SELECT o.OUGUID AS OUGUID, o.OUNAME AS OUNAME,
IFNULL(COUNT(DISTINCT o.USERGUID), 0) AS USERNUM,
SUM(CASE WHEN IFNULL(q.CALLTIME, 0) != 0 THEN 1 ELSE 0 END) AS CallNoCount,
SUM(CASE WHEN q.ROW_ID = '' THEN 1 ELSE 0 END) AS QuestionCount,
SUM(CASE WHEN q.`STATUS` = '' THEN 1 ELSE 0 END) AS PassCount,
SUM(CASE WHEN q.`STATUS` = '' OR q.`STATUS` = '' THEN 1 ELSE 0 END) AS BanjianCount
FROM
(SELECT ROW_ID,`STATUS`,handleuserguid,CALLTIME FROM audit_queue UNION ALL
SELECT ROW_ID,`STATUS`,handleuserguid,CALLTIME FROM audit_queue_history) q
LEFT JOIN (SELECT o.OUNAME,o.OUGUID,u.USERGUID, u.DISPLAYNAME FROM frame_user u
LEFT JOIN frame_ou o ON u.OUGUID = o.OUGUID) o
ON q.handleuserguid = o.USERGUID
WHERE q.CALLTIME BETWEEN '2018-09-30 00:00:00' AND '2018-10-30 23:59:59'
GROUP BY o.OUGUID;
其中类似 SUM(CASE WHEN q.ROW_ID = '1' THEN 1 ELSE 0 END) AS QuestionCount 为按一定的条件计数;

复杂sql语句:按部门统计人数的更多相关文章

  1. SQL语句调优 - 统计信息的含义与作用及维护计算

    统计信息的含义与作用                                                                                          ...

  2. vertica时间计算SQL语句实例:统计一天内登录的用户

    SQL语句实例: select count(id) as num from public.user where cast((CURRENT_TIMESTAMP-login_timed) day as ...

  3. 在同一个sql语句中,统计不同条件的Count数量

    前几天帮同事优化了个SQL,原写法使用多个子查询这里不再重现了,大家都遇到过这样一种情况,在项目后期的维护中, 修改别人的SQL代码,超过30行的语句,多层子查询,读起来很坑,时间久的项目伴随着人员的 ...

  4. ***常见复杂SQL语句(含统计类SQL)

    1.SQL统计某字段的出现次数 比如统计某个表中,姓名出现的次数:select name,count(*) from biao group by name having count(*) > 2 ...

  5. sql语句按月份统计查询

    select year(createdate) 年,month(createdate) 月,count(1) from public_cms_arcwhere (userid in (select i ...

  6. Mysql 存储引擎以及 SQL语句

    存储引擎 文件格式有很多种,针对不同的文件格式会有对应的不同存储方式和处理机制. 针对不同的数据应该有对应的不同处理机制来存储. 存储引擎就是不同的处理机制 MySQL主要的存储引擎 Innodb 是 ...

  7. Informix 11.5 SQL 语句性能监控方法及实现

    我们知道,在数据库应用系统中,SQL 语句的性能好坏至关重要.如果 SQL 语句性能很差,可能会导致整个数据库应用系统的性能也非常差.那么,如何监控数据库系统中 SQL 语句的性能,导致 SQL 语句 ...

  8. SQL语句建表、设置主键、外键、check、default、unique约束

    · 什么是数据库? 存放数据的仓库. · 数据库和数据结构有什么区别? 数据结构要解决在内存中操作数据的问题,数据库要解决在硬盘中操作数据的问题.数据结构研究一些抽象数据模型(ADT)和以及定义在该模 ...

  9. LINQ to SQL语句之Select/Distinct和Count/Sum/Min/Max/Avg (转)

    Select/Distinct操作符 适用场景:o(∩_∩)o… 查询呗. 说明:和SQL命令中的select作用相似但位置不同,查询表达式中的select及所接子句是放在表达式最后并把子句中的变量也 ...

随机推荐

  1. Qt Package Project 打包发布程序

    在Qt项目开发完成后,我们想将项目打包发布成一个可执行文件,需要做如下步骤: 首先,将项目中的release文件中的可执行文件拷到一个新建的文件夹中,例如project.exe,用Qt自带的生成必备的 ...

  2. sftp本地上传和远程下载

    1.  打开SecureCRT 连接相应的主机 2.  打开会话后,使用快捷键 alt + p,进入 sftp> 界面 3.  查看 sftp 相应的命令 help 4.  常用命令 (1)查看 ...

  3. 【转】JavaScript prototype

    原文地址:http://www.cnblogs.com/dolphinX/p/3286177.html 用过JavaScript的同学们肯定都对prototype如雷贯耳,但是这究竟是个什么东西却让初 ...

  4. SQL Fundamentals || Single-Row Functions || 转换函数 Conversion function

    SQL Fundamentals || Oracle SQL语言   SQL Fundamentals: Using Single-Row Functions to Customize Output使 ...

  5. python读取文件行号和内容的便捷方法

    处理数据时候,需要得到数据所在和行号,使用enumerate时便捷的方法: file = open('file.txt','r') for (num,value) in enumerate(file) ...

  6. CodeForces - 812B Sagheer, the Hausmeister 搜索 dp

    题意:给你n行长度为m的01串(n<15,m<100) .每次只能走一步,要将所有的1变为零,问最少的步数,注意从左下角开始,每次要将一层清完才能走到上一层,每次只有在第一列或者最后一列才 ...

  7. 《前端JavaScript面试技巧》笔记一

    思考: 拿到一个面试题,你第一时间看到的是什么 -> 考点 又如何看待网上搜出来的永远也看不完的题海 -> 不变应万变 如何对待接下来遇到的面试题 -> 题目到知识再到题目 知识体系 ...

  8. ArcGIS API for javascript开发笔记(三)——解决打印输出的中文为乱码问题

    感谢一路走来默默支持和陪伴的你~~~ ----------------------欢迎来访,拒绝转载---------------------- 1.      调用ArcGIS API的Print实 ...

  9. 转:Java中字符串split() 的使用方法.

    原文地址:https://blog.csdn.net/qq_27093465/article/details/54910323 挺有意思的一个问题 先看下面的方法,事先预测一下,经过split方法,按 ...

  10. 群用户通过微信小程序可以更好地协作了

    今天,小程序向开发者开放了群ID的接口能力.简单地说,就是当你把小程序分享在群聊中,被点击后开发者可获取群ID和群名称,也方便更好地针对群场景提供个性化服务.不同的群有各自的群ID,那么这个新能力开发 ...