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)的更多相关文章

  1. 010.简单查询、分组统计查询、多表连接查询(sql实例)

    -------------------------------------day3------------ --添加多行数据:------INSERT [INTO] 表名 [(列的列表)] --SEL ...

  2. mysql加强(3)~分组(统计)查询

    一.分组(统计) 查询 1.语法 : select [distinct] *| 分组字段1[别名] [,分组字段2[别名],...] | 统计函数 from 表名 [别名] [where 条件(s)] ...

  3. SQL Fundamentals: 分组统计查询(FROM-WHERE-GROUPBY-HAVING-SELECT-ORDER BY)

    SQL Fundamentals || Oracle SQL语言 统计函数 单字段分组统计(GROUP BY) 多字段分组统计 HAVING子句 控制操作的显示列:基本的SELECT语句 控制行:限定 ...

  4. Oracle数据库从入门到精通-分组统计查询

    视频课程:李兴华 Oracle从入门到精通 视频课程学习者:阳光罗诺 视频来源:51CTO学院 整体内容: 统计函数的使用 分组统计查询的实现 对分组的数据过滤 统计函数 在之前我们就学习过一个COU ...

  5. MySql 简单统计查询消耗时间脚本

    MySql 简单统计查询消耗时间脚本 by:授客 QQ:1033553122 drop procedure if exists selectTime; delimiter; create proced ...

  6. sql 分组统计查询并横纵坐标转换

    关于sql 分组统计查询,我们在做报表的时候经常需要用到;今天就在这里整理下; 先附上一段sql代码: if object_id(N'#mytb',N'U') is not null drop tab ...

  7. mysql(4)—— 表连接查询与where后使用子查询的性能分析。

    子查询就是在一条查询语句中还有其它的查询语句,主查询得到的结果依赖于子查询的结果. 子查询的子语句可以在一条sql语句的FROM,JOIN,和WHERE后面,本文主要针对在WHERE后面使用子查询与表 ...

  8. MySQL学习笔记——多表连接和子查询

    多表连接查询 # 返回的是两张表的乘积 SELECT * FROM tb_emp,tb_dept SELECT COUNT(*) FROM tb_emp,tb_dept # 标准写法,每个数据库都能这 ...

  9. MySQL数据库:多表连接查询

    多表连接查询 注意:使用连接技术建议将表经行重命名! # explain 检索连接是否达标 # 内连接 # 语法1 from 表1 inner join 表2 on 主键字段=外键字段 [where ...

随机推荐

  1. HGOI 20190705 题解

    Problem A 树状数组 给出数x,一直执行x = x and (x+1)-1 直到 x=0 为止 询问这个数执行运算的次数. 这个数以二进制的形式表述出 x = s1 & s2 .... ...

  2. hdu_1059(多重背包)

    多重背包的讲解: 多重背包问题https://blog.csdn.net/yandaoqiusheng/article/details/84782655 ; i <= n; i++) { int ...

  3. 使用Qt Designer进行布局

    在使用Form之前,需要将Form上的对象放置到布局中.这确保在应用程序中预览或使用Form时,对象将正确显示.在布局中放置对象还可以确保在调整窗体大小时它们也能正确调整大小. 应用和打断布局    ...

  4. confluence 附件docx文件 乱码处理

    服务器安装字体库 Fontconfig是一个用于配置和自定义字体访问的库 yum -y install fontconfig 拷贝需要的字体文件 fonts.zip(或自己电脑中的字体文件c:/Win ...

  5. 将文件夹上传到FTP服务器,遍历上传,,,文件夹不能直接上传到FTP服务器上。。。

    <? $ftp_ip = "FTP"; $ftp_user = "user"; $ftp_pwd = "password"; $con ...

  6. AI换脸必备知识:如何查看显卡型号以及显存大小!

    使用Deepfakes(AI换脸) 软件,拼的就是配置,耗的就是时间,考验的是耐心. 配置好了,时间就少了. 所以玩这种软件,硬核需求就是:配置,配置,配置.  我的电脑能跑这个软件么?也是很多新手的 ...

  7. 网页页头meta详解(科普知识)

    1.Content-Type和Content-Language (显示字符集的设定)  说明:设定页面使用的字符集,用以说明主页制作所使用的文字已经语言,浏览器会根据此来调用相应的字符集显示page内 ...

  8. nmon(linux监视)

    nmon –f –t –r test –s 10 –c 60 即为10分钟 上面命令的含义是:-f :按标准格式输出文件名称:<hostname>_YYYYMMDD_HHMM.nmon-t ...

  9. 关于img标签浏览器自带的边框,清除边框的解决方式(即img[src=""] img无路径情况下,灰色边框去除解决方法)

    详解img[src=""] img无路径情况下,灰色边框去除解决方法 1.Js解决办法 <html> <head> <meta charset=&qu ...

  10. docker 运行mysql最新版本用navicat连接报错:1251

    主要是:新版的mysql的加密方式发生了变化,解决方法如下: 1:进入docker容器: docker exec -it  mysql(启动mysql时候起的别名)  /bin/bash 2:登陆my ...