美文网首页
数据库第五天

数据库第五天

作者: __method__ | 来源:发表于2021-02-10 11:20 被阅读0次

查询每个部门每个岗位的工资总和

SELECT  DEPTNO,job, SUM(SAL) from emp GROUP BY  DEPTNO, JOB
SELECT job, DEPTNO, SUM(SAL) from emp GROUP BY  JOB, DEPTNO
  • 查询每个部门的部门编号,部门名称,部门人数,最高工资,最低工资,工资总和,平均工资。
select e.deptno,d.dname, count(*) ,max(e.sal),min(e.sal),sum(e.sal),avg(e.sal)
from emp e, dept d 
where e.deptno=d.deptno 
group by e.deptno, d.dname
  • 查询每个部门,每个岗位的部门编号,部门名称,岗位名称,部门人数,最高工资,最低工资,工资总和,平均工资
select e.deptno,e.job,d.dname, count(*) ,max(e.sal),min(e.sal),sum(e.sal),avg(e.sal)
from emp e, dept d 
where e.deptno=d.deptno 
group by e.deptno,e.job,d.dname

ANSI sql

  • ANSI sql 等值连接语法
select *
from emp e
JOIN dept d on e.DEPTNO = d.DEPTNO

格式是

select 列名
from 表名1 join 表名2 on 连接条件

等价于

select *
from emp e, dept d 
where e.deptno=d.deptno 

外部连接

  • 左外连接: 以 from 后面的坐标为基表, 无路右面的表是否有这个字段都会显示出来
    查询所有雇员姓名,部门编号,部门名称,包括没有部门的员工也要显示出来
SELECT e.ename, e.deptno, d.DNAME FROM emp e 
LEFT OUTER JOIN dept d
on e.deptno = d.deptno
  • 右外连接, 右边的表为基准表, 右边的都会显示出来
SELECT e.ename, e.deptno, d.DNAME FROM emp e 
RIGHT  OUTER JOIN dept d
on e.deptno = d.deptno
  • 查询每个经理所管理的人数,经理编号,经理姓名,要求包括没有经理的人员信息。
select count(worker.empno),manager.empno, manager.ename
from  emp worker
left outer join emp manager on manager.EMPNO = worker.MGR 
group by manager.empno

相关文章

  • Android前五天总结

    总结: 第三天: 数据库 listview 第四天:网络编程 第五天 网络请求2 HttpClient ...

  • 数据库第五天

    一、JDBC中事务处理的步骤: 1、要取消掉JDBC的自动提交:void setAutoCommit(boolea...

  • 数据库第五天

    //局部变量 create procedure getNum() begin declare number int...

  • 数据库第五天

    查询每个部门每个岗位的工资总和 查询每个部门的部门编号,部门名称,部门人数,最高工资,最低工资,工资总和,平均工资...

  • 数据库

    今天是真正开始做数据库的第五天了,虽然每天都有在坚持写总结,但还是来系统总结一下这几天的收获吧! 第...

  • 悦读会第五天

    第五天啦! 第五天啦! 第五天啦! 快来欣赏一下同学们认认真真阅读的美照~ ...

  • Day5

    第五天

  • 练字

    第五天

  • 手账Day05|南方大澡堂子

    第五天

  • 戒撸啦~第五天

    第五天

网友评论

      本文标题:数据库第五天

      本文链接:https://www.haomeiwen.com/subject/rtwhxltx.html