SQL统计部门人数,人数为0的部门也要显示出来
相同点:它们都以一张部门表(或类别表),其它表都有部门编号DepartmentID(类别编号)
案例一:一张表
select c.DepartmentID,c.DepartmentName, t.Num AS '人员数量' from T_Department as c
left join (select DepartmentID,COUNT(*) AS Num from T_User group by DepartmentID) as t on c.DepartmentID= t.DepartmentID
核心思想就是: 拆分
1将人员表按部门编号统计数量: ( select DepartmentID,COUNT(*) AS Num from T_User group by CompanyID) 得到t: 部门编号、部门人员数量;
2将 部门表与 t ,根据部门编号联表左连接,得到 :部门名称、部门人员数量
案例二:多张表
统计提交的 调查人员、设备、规范、数据来源规范 表的数量
select c.CompanyID,c.CompanyName, t1.Num AS '调查人员数量',t2.Num AS '设备数量',t.Num AS '规范数量',t3.Num AS '数据来源规范数量' from T_Company as c
left join (select CompanyID,COUNT(*) AS Num from T_Standard as s where s.HasSubmitted=1 group by CompanyID) as t on c.CompanyID= t.CompanyID
left join (select CompanyID,COUNT(*) AS Num from T_Investigator as s where s.HasSubmitted=1 group by CompanyID) as t1 on c.CompanyID= t1.CompanyID
left join (select CompanyID,COUNT(*) AS Num from T_Machine as s where s.HasSubmitted=1 group by CompanyID) as t2 on c.CompanyID= t2.CompanyID
left join (select CompanyID,COUNT(*) AS Num from T_DataSource as s where s.HasSubmitted=1 group by CompanyID) as t3 on c.CompanyID= t3.CompanyID
order by c.CompanyID
最后赋值粘贴到Excel,在Excel搞个合计:
SQL统计部门人数,人数为0的部门也要显示出来的更多相关文章
- MS SQL统计信息浅析下篇
MS SQL统计信息浅析上篇对SQL SERVER 数据库统计信息做了一个整体的介绍,随着我对数据库统计信息的不断认识.理解,于是有了MS SQL统计信息浅析下篇. 下面是我对SQL Serve ...
- sql 统计常用的sql
统计常用的sql 统计常用的sql语句: 今天的所有数据:select * from 表名 where DateDiff(dd,datetime类型字段,getdate())=0 昨天的所有数据:s ...
- SQL统计——按照各种维度
在SQLserver中可以按照各种维度进行统计,实现与EXCLE一样强大的功能. --========================== --Blog:<奔跑的金鱼> --Desc:&l ...
- 一个坑:java.sql.ResultSet.getInt==》the column value; if the value is SQL NULL, the value returned is 0
Retrieves the value of the designated column in the current row of this ResultSet object as a String ...
- java.lang.RuntimeException: java.sql.SQLException: Too many parameters: expected 0, was given 1 Quer
如果出现类似这样的错误,检查一下是否sql语句和参数的位置对调了. java.lang.RuntimeException: java.sql.SQLException: Too many parame ...
- 终于将 SQL Server 成功迁移至 MySQL8.0 啦!!!
之前一直使用 SQL Server 作为主数据库而不是 MySQL ,原因之一是单机 SQL Server 性能比 MySQL 强很多,另一个原因是之前客户的系统管理员大多只有 SQL Server ...
- sql统计字符串出现次数技巧
在牛客网上看到一道题,感觉挺有趣,是用sql统计字符串出现的次数. 这里提供一种思路,比如统计字符串A中子串B的出现次数: SELECT (LENGTH(A) - LENGTH(REPLACE(A, ...
- 构建使用SQL服务器的ASP.net Core2.0 API
web api的教程非常少,使用 core2.0的更少,微软提供了一个aspnet core2的教程,也提供了EF core中访问SQL服务器的教程,参考这些教程可以做出使用sql server的as ...
- excel中统计COUNTIFS的值为0
excel中统计COUNTIFS的值为0 个人认为是由于导出的文件里面的字符个数问题 使用 =COUNTIFS(H1:H175,"微信支付") 这个的结果居然是0,找了很多办法 于 ...
随机推荐
- SQLServer newID()
一直想找个除了newid() 外高效取随机数的方法, 有点遗憾,木有找到,谁有除了newid()以外更高效的 请留言,谢谢 从A表随机取2条记录,用SELECT TOP 10 * FROM ywle ...
- visual studio 无添加视图 选项
我是因为 UserController未继承 Controller
- centos7.6下的python3.6.9虚拟环境安装elastalert
centos7.6安装python3.6.9+elastalert .编译安装python3..9环境 # 安装依赖 yum -y install zlib-devel bzip2-devel ope ...
- 有无关键字new的区别
function Person(firstName, lastName) { this.firstName = firstName; this.lastName = lastName; } const ...
- 容器版jenkins使用宿主机的kubectl命令
参照里面的第4步: https://www.cnblogs.com/effortsing/p/10486960.html
- Unreal Engine 4 中的 UI 优化技巧
转自:https://mp.weixin.qq.com/s/bybEHM9tF-jBPxxqXfrPOQ## Unreal Open Day 2017 活动上 Epic Games 开发者支持工程师郭 ...
- SpringBoot系列教程之Redis集群环境配置
之前介绍的几篇redis的博文都是基于单机的redis基础上进行演示说明的,然而在实际的生产环境中,使用redis集群的可能性应该是大于单机版的redis的,那么集群的redis如何操作呢?它的配置和 ...
- 多生产者多消费者(第二种方式2.1)基于BlockingQueue
public class Producer implements Runnable { //静态变量只初始化一次 private static AtomicInteger count = new At ...
- 编写第一个Linux环境下程序的编译,下载记录
跟着韦东山学习Linux: 今天系统系统性的学了代码的编译下载,条记录一下: 一,代码:001_led_on.S,就把下面代码编译后Bin文件下载进2440处理器. /* * 点亮LED1: gpf4 ...
- Jmeter参数化(_csvread函数、CSV Data Set Config)
方法一.Jmeter自带的函数助手——_CSVRead函数 1.数据准备:先在excel存储数据,保存格式选择csv格式.或在记事本存储数据,列之间用英文逗号分隔,保存为txt 2.使用_csvrea ...