MySQL 分组统计查询 表连接(3)
1 查询底薪超过公司平均底薪的员工信息?
select
e.empno,e.ename,e.sal
from t_emp as e
join (select avg(sal) as avg from t_emp) t on e.sal > t.avg
2 统计人数 格式化时间
select
count(*) as count, max(a.sal),min(a.sal),
avg(a.sal) , floor(avg(DATEDIFF(NOW(),a.hiredate)/365))
from
t_emp a
join t_dept b on a.deptno = b.deptno
where
b. dname = 'RESEARCH'
3 查询每种职业的最高工资,最低工资 平均工资 ...
select
e.job,
max(e.sal + IFNULL(e.comm,0)),
min(e.sal + IFNULL(e.comm,0)),
avg(e.sal + IFNULL(e.comm,0)),
max(s.grade),
min(s.grade)
from t_emp e join t_salgrade s
on e.sal + IFNULL(e.comm,0) BETWEEN s.losal and s.hisal
GROUP BY e.job
4 查询每个底薪超过部门平均底薪的员工
select e.empno,
e.ename,
e.sal
from t_emp e join
(select deptno,AVG(sal) avg from t_emp GROUP BY deptno) t
on e.deptno = t.deptno
where
e.sal >= t.avg
5 统计部门名称和人数
select
d.dname,count(e.deptno)
from t_dept d
left join t_emp e on d.deptno = e.deptno
GROUP BY d.deptno HAVING d.dname is not null
6 union 连接使用方法
(select
d.dname,count(e.deptno)
from t_dept d
left join t_emp e on d.deptno = e.deptno
GROUP BY d.deptno)
union
(select
d.dname,count(*)
from t_dept d
right join t_emp e on d.deptno = e.deptno
GROUP BY d.deptno)
7 查询上司名称 编号
select
e.empno,
e.ename,
d.dname,
(e.sal+ IFNULL(comm,0)) AS sal,
s.grade,
FLOOR(DATEDIFF(NOW(),e.hiredate)/365) AS hire,
t.empno m_empno,
t.ename m_ename,
t.dname m_dname
from
t_emp e
left join t_dept d on d.deptno = e.deptno
left join t_salgrade s on e.sal BETWEEN s.losal and s.hisal
left join (select
e.deptno,e.empno,e.ename,d.dname
from t_emp e
join t_dept d on d.deptno = e.deptno) as t on t.empno = e.mgr
MySQL 分组统计查询 表连接(3)的更多相关文章
- 010.简单查询、分组统计查询、多表连接查询(sql实例)
-------------------------------------day3------------ --添加多行数据:------INSERT [INTO] 表名 [(列的列表)] --SEL ...
- mysql加强(3)~分组(统计)查询
一.分组(统计) 查询 1.语法 : select [distinct] *| 分组字段1[别名] [,分组字段2[别名],...] | 统计函数 from 表名 [别名] [where 条件(s)] ...
- SQL Fundamentals: 分组统计查询(FROM-WHERE-GROUPBY-HAVING-SELECT-ORDER BY)
SQL Fundamentals || Oracle SQL语言 统计函数 单字段分组统计(GROUP BY) 多字段分组统计 HAVING子句 控制操作的显示列:基本的SELECT语句 控制行:限定 ...
- Oracle数据库从入门到精通-分组统计查询
视频课程:李兴华 Oracle从入门到精通 视频课程学习者:阳光罗诺 视频来源:51CTO学院 整体内容: 统计函数的使用 分组统计查询的实现 对分组的数据过滤 统计函数 在之前我们就学习过一个COU ...
- MySql 简单统计查询消耗时间脚本
MySql 简单统计查询消耗时间脚本 by:授客 QQ:1033553122 drop procedure if exists selectTime; delimiter; create proced ...
- sql 分组统计查询并横纵坐标转换
关于sql 分组统计查询,我们在做报表的时候经常需要用到;今天就在这里整理下; 先附上一段sql代码: if object_id(N'#mytb',N'U') is not null drop tab ...
- mysql(4)—— 表连接查询与where后使用子查询的性能分析。
子查询就是在一条查询语句中还有其它的查询语句,主查询得到的结果依赖于子查询的结果. 子查询的子语句可以在一条sql语句的FROM,JOIN,和WHERE后面,本文主要针对在WHERE后面使用子查询与表 ...
- MySQL学习笔记——多表连接和子查询
多表连接查询 # 返回的是两张表的乘积 SELECT * FROM tb_emp,tb_dept SELECT COUNT(*) FROM tb_emp,tb_dept # 标准写法,每个数据库都能这 ...
- MySQL数据库:多表连接查询
多表连接查询 注意:使用连接技术建议将表经行重命名! # explain 检索连接是否达标 # 内连接 # 语法1 from 表1 inner join 表2 on 主键字段=外键字段 [where ...
随机推荐
- python环境下安装opencv库的方法
注意:安装opencv之前需要先安装numpy,matplotlib等 一.安装方法 方法一.在线安装 1.先安装opencv-python pip install opencv-python --u ...
- Linux-expect脚本-1
expect是基于tcl演变而来的,所以很多语法和tcl类似,基本的语法如下所示: 首行加上/usr/bin/expect spawn: 后面加上需要执行的shell命令,比如说spawn sudo ...
- Xcode 4.1实用小工具:模拟网络连接和带宽
暂无评论 适用于Mac OS X Lion的开发套件Xcode 4.1中,有个新鲜的小工具叫做Network Link Conditioner(网络连接调节器),是一款具有高度可定制性的辅助工具,让用 ...
- 胜利点20191010-5 alpha week 1/2 Scrum立会报告+燃尽图 03
此作业要求参见:https://edu.cnblogs.com/campus/nenu/2019fall/homework/8747 一.小组情况组长:贺敬文组员:彭思雨 王志文 位军营 杨萍队名:胜 ...
- 源码编译apache报错的解决方法
源码编译apache报错的解决方法 问题介绍 在源码编译安装httpd时,./configure执行无错误,到make时就报错,在网络上搜索了很多文章,很多方法如换apr-util的低版本并不能很 ...
- SQL Server高可用实现方案
名词解释: WSFC:Windows Server Failover Cluster,在Windows Server操作系统上,由WSFC提供高可用性.故障检测和SQL Server AlwaysOn ...
- C++ Map实践
实践如下: #include <iostream> #include <map> #include <string> #include <typeinfo&g ...
- 浏览器端-W3School-JavaScript:JavaScript 事件参考手册
ylbtech-浏览器端-W3School-JavaScript:JavaScript 事件参考手册 1.返回顶部 1. JavaScript 事件参考手册 事件通常与函数配合使用,这样就可以通过发生 ...
- Ruby小白入门笔记之<Rails项目目录结构>
一 .流程分析 二.目录分析 DemoRails app (核心) assets (web前端所需文件) images (图片) javascripts (JS代码) styleshe ...
- LinkedList简介
原文:https://blog.csdn.net/GongchuangSu/article/details/51527042 LinkedList简介 LinkedList 是一个继承于Abstrac ...