按部门编号从小到大的顺序输出雇员名字、工资以及工资与平均工资的差。

原创 2016年06月01日 11:56:58
--1.按部门编号从小到大的顺序输出雇员名字、工资以及工资与平均工资的差。
--分析:1.需要两游标:c_dept :select deptno from dept order by deptno;
--c_emp(p_deptno): select empno,sal from emp where deptno = p_deptno order by empno;
--变量:v_deptno ,v_empno,v_sal,v_avg_sal
set serveroutput on
declare
v_deptno number;
v_name varchar2(10);
v_sal number;
v_avg_sal number;
cursor c_dept is select deptno from dept order by deptno;
cursor c_emp(p_deptno number) is select ename,sal from emp where deptno = p_deptno order by empno;
begin
  open c_dept;
    loop
      fetch c_dept into v_deptno;
      exit when c_dept%notfound;
      dbms_output.put_line('----------'||v_deptno||'号部门信息----------');
      dbms_output.put_line(rpad('雇员名字',10)||rpad('工资',6)||rpad('工资与平均工资的差',20));
      begin
        open c_emp(v_deptno);
          loop
            fetch c_emp into v_name,v_sal;
            exit when c_emp%notfound;
            select round(avg(sal),2) into v_avg_sal from emp where deptno = v_deptno;
            dbms_output.put_line(rpad(v_name,10)||rpad(v_sal,10)||to_char(v_sal-v_avg_sal));
          end loop;
        close c_emp;
      end;
    end loop;
  close c_dept;
end;

相关文章推荐

MapReduce案例学习(2) 求各个部门的人数和平均工资

设计思路: map阶段:map读取每行记录,将部门作为key,工资作为value输出; reduce阶段:将相同的key即同部门的工资作叠加运算得出总工资,同时在遍历value时,定义一个计数变量...
  • lsxy117
  • lsxy117
  • 2015年09月20日 15:55
  • 702

组函数(avg(),sum(),max(),min(),count())、多行函数,分组数据(group by,求各部门的平均工资),分组过滤(having和where),sql优化 .

1组函数 avg(),sum(),max(),min(),count()案例: selectavg(sal),sum(sal),max(sal),min(sal),count(sal) f...

2012北京地区Java程序员的平均工资调查数据分析

近几年,随着嵌入式软件开发行业迅猛发展,嵌入式人才严重短缺,嵌入式工程师的薪资待遇更是水涨船高,月薪直逼万元大关。这不禁让嵌入式软件开发工程师成为了最热门的职业之一。   根据最新的对北京地区Ja...
  • Li_soso
  • Li_soso
  • 2012年11月20日 10:32
  • 1129

16年程序员平均工资122478元_你拖后腿了没?

最近全国各地平均工资数据公布,IT产业的平均工资排行各行业门类首位,16年程序员们创造了平均工资122478元的贡献,然而好像跟我的工资并没有什么关系,感觉再一次拖了国家后腿....
  • Gamay
  • Gamay
  • 2017年06月05日 13:58
  • 430

2015年网络相关岗位平均工资提升6.2%;IT培训及认证体现非凡价值

2015年网络相关岗位平均工资提升6.2%;IT培训及认证体现非凡价值 IT认证价值报告显示: IT员工的技能认证是帮助预测IT项目成功的最重要的一个因素。 IT认证工程...

查询每个部门最低工资的雇员信息

如题:查询每个部门最低工资的雇员信息 关联子查询方法 1 查询每个部门的最低工资 2 同最低工资关联人员信息 in关键字方法 in关键字是这种场景容易想到的一个方法,先查询出部门的最低工资,然后匹配最...

列出薪金高于公司平均薪金所有员工,所在部门,上级领导,公司的工资等级

如题:列出薪金高于公司平均薪金所有员工,所在部门,上级领导,公司的工资等级 表:emp,dept, salgrade 第一步:求出公司平均薪金; 第二步:求薪金高于公司平均薪金的所有员工; 第三步:求...

走进C++程序世界---------雇员工资管理系统

前面对C++ 面向对象的基本了解和认识,下面来运用前面的基础知识,来实现一个简单的雇员工资管理系统,雇员分为2中,普通员工和管理者,两者工资和工作年限挂钩。具体参见下图: 具体实现参见下面的代码:...

一五年未注册it黑公司长期拖欠工资还扬言相关部门不作为你能把我怎么着

新浪博客:http://blog.sina.com.cn/s/blog_d38f8f550101lgwm.html 新浪微博:http://t.cn/zQ6xiJY 新浪长微博:http://t....

如何用分析函数找出EMP表中每个部门工资最高的员工

EMP表是Oracle测试账户SCOTT中的一张雇员表,首先,我们来看看emp表的数据 SQL> select * from emp; EMPNO ENAME JOB ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:按部门编号从小到大的顺序输出雇员名字、工资以及工资与平均工资的差。
举报原因:
原因补充:

(最多只允许输入30个字)