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 ...
随机推荐
- C++ list用法总结
头文件 #include<list> 声明一个int型的list:list a: 1.list的构造函数 list<int>a{1,2,3} list<int>a( ...
- xwiki使用中的问题
xwiki 内存限制 问题重现: xwiki启动后内存.cpu一直上涨,不回落,启动后服务访问速度越来越慢,最后无法访问 分析: xwiki在启动时会消耗大量内存和cpu,增加tomcat最大内存限制 ...
- [BZOJ5249][九省联考2018]IIIDX:线段树+贪心
分析 GXZlegend orz 构造出一组合法的解并不是难事,但是我们需要输出的是字典序最大的解. 字典序最大有另一种理解方式,就是让越小的数尽量越靠后. 我们从树的根结点出发,从1开始填数,构造出 ...
- Mac安装ipython与jupyter
Python从Python发展而来,更倾向于科学计算.互联网数据分析更喜欢用. 首先切换root用户: sudo su - pip3自动安装ipython yuchaodeMacBook-Pro:~ ...
- Scala学习(一)——基础语法
Scala语言是一种面向对象语言,结合了命令式(imperative)和函数式(functional)编程风格,其设计理念是创造一种更好地支持组件的语言. 特性 多范式(Multi-Paradigm) ...
- tensorflow实现迁移学习
此例程出自<TensorFlow实战Google深度学习框架>6.5.2小节 卷积神经网络迁移学习. 数据集来自http://download.tensorflow.org/example ...
- leetcode 51 N皇后问题
代码,由全排列转化而来,加上剪枝,整洁的代码: 共有4个变量,res(最终的结果),level,当前合理的解,n皇后的个数,visit,当前列是否放过皇后,由于本来就是在新的行方皇后,又通过visit ...
- 根据md5去重文件
import os import hashlib def get_md5(file): file = open(file,'rb') md5 = hashlib.md5(file.read()) fi ...
- 自定义配置文件读取产生的“无法添加已属于该配置的 ConfigurationSection”异常解决办法
最近在编写一个读写自定义配置文件的功能时遇到一个问题,在初始化的时候读入配置显示出来,修改后把配置回存到配置文件,在回存的时候,先移除配置节,再添加,在添加的时候遇到如下的异常: {"无法添 ...
- LoadRunner 技巧之 自动关联
LoadRunner 技巧之 自动关联 这一节讲loadunner 关联的问题,其实这个东西理解起来简单,但说起来比较麻烦. 关联的原理: ...