CUUG官方博客: CUUG官网_CUUG怎么样_CUUG培训就业怎么样_CUUG学Oracle要多少钱

【SQL】 作业 4 5章 兰州交大 祁振

 

                                        第四章


1.查询员工的姓名,部门号,部门名称。


 select  e.ename, d.deptno, d .dname  from emp e,dept d


 where e.deptno=d.ddeptno;


2.查询 30 号部门的所有工作的列表,以及部门号。


 select  d.deptno,e.job  from   emp e, dept  d


  Where e.deptno=d.deptno  and  deptno=30;


3.查询出奖金( comm) 非空的员工姓名、部门名称以及部门所处的位置。


 select e.ename,d.dname,d.loc  from   emp  e,dept d


 where e.deptno=d.deptno and  comm  is not null;


4.查询姓名中包含"A"字母的所有员工姓名及其所在部门的名称。


select e.ename,d.dname  from emp e, dept d


 here e.deptno=d.deptno  and  instr(ename,A);


5.查询工作在 DALLAS 的所有员工的姓名、工作、部门号、部门名称


select e.ename,e.job,e.deptno,d.dname from   emp  e, dept d


  Where   e.deptno=d.deptno  and  e.job=DALLAS;


6.查出每个雇员的编号、姓名、其经理的编号和姓名。各个列分别命名为:


    select e.empno id  ,e.ename name, m.empno mgr_id, m.ename mgr_name  


    from emp e, emp m   


   where  e.mgr=m.empno;


 7.修改第 6 题的查询,使得没有经理的员工的信息也可以显示出来。

   select  e.empno id,e.ename name, m.empno mgr_id, m.ename mgr_name

  from emp e ,emp m


  where e.mgr=m.empno;



                       第五章


1.查出所有员工的最高、最低、平均的工资,以及工资的总和,列名分别是

maxsal,minsal,avgsal,sumsal。这些数值都用四舍五入进行处理。


   select round(max(sal))  maxsal, round(min(sal))  minsal,

  

   round(avg(sal))  avgsal,  round(sum(sal))  sumsal


     from emp;


2.按照工作类型分类,查出每种工作的名称和其员工的最高、最低、平均的工资、工资的总和,这些数值都用四舍五入进行处理。


    selectjob,round(max(sal)),round(min(sal)), round(avg(sal)),round(sum(sal))


   from   emp  


   group by job;


3.查出每种工作的名称和从事该工作的人数。


  select job ,count(ename)  empno  from emp  group by job;


4.查出不当领导的职工姓名


  select ename from emp where empno not in 

  

  (select mgr from emp where mgr is not null);


5.按照工作分类,查工作及最高工资和最低工资的差额,该列命名为 difference


  select   max(sal)-min(sal)  difference from   emp 


  Group by  job;


 


作者:祁小米加豆豆 分类:学员作业 浏览:332 评论:0
留言列表
发表评论
来宾的头像

点击关闭
  • 在线客服