为所有雇员增加工资,工资在 1000 以内的增加 30%,工资在 1000~2000之间的增加 20%, 2000 以上的增加 10%。

原创 2016年06月01日 14:43:36
--为所有雇员增加工资,工资在 1000 以内的增加 30%,工资在 1000~2000
--之间的增加 20%, 2000 以上的增加 10%。
--分析:if 迭代
--游标:c_emp :select ename,sal from emp; 变量:v_empno,v_name,v_sal
set serveroutput on 
declare 
v_empno emp.empno%type;
v_name emp.ename%type;
v_sal emp.sal%type;
cursor c_emp is select empno,ename,sal from emp;
begin
 dbms_output.put_line(rpad('姓名',10)||rpad('旧薪资',10)||rpad('新薪资',10));
  open c_emp;
    loop
      fetch c_emp into v_empno,v_name,v_sal;
      exit when c_emp%notfound;
      if v_sal < 1000 then
      update emp set sal = sal*1.3
      where empno=v_empno;
      commit;
      dbms_output.put_line(rpad(v_name,10)||rpad(v_sal,8)||rpad(v_sal*1.3,8));
      elsif v_sal >=1000 and v_sal <2000 then
      update emp set sal = sal*1.2
      where empno=v_empno;
      commit;
      dbms_output.put_line(rpad(v_name,10)||rpad(v_sal,8)||rpad(v_sal*1.2,8));
      else update emp set sal = sal * 1.1
      where empno=v_empno;
      commit;
      dbms_output.put_line(rpad(v_name,10)||rpad(v_sal,8)||rpad(v_sal*1.1,8));
      end if;
    end loop;
  close c_emp;
end;

利用oracle的游标为员工涨工资,从最低工资涨起每人涨10%,但工资总额不能超过5万元

--为员工涨工资,从最低工资涨起每人涨10%,但工资总额不能超过5万元, --请计算涨工资的人数和涨工资后的工资总额,并输出涨工资人数及工资总额 --sql语句 --select empno,sal ...
  • u012110719
  • u012110719
  • 2015年08月20日 16:55
  • 2543

js作业--自己写

1.编写一个程序,计算增加后的工资。要求工龄满5,增加20%工资;若2—4,则增加15%;若小于2,则增加10%工资。 Document 输入工作年份 输入工资 点击...
  • sinat_36146776
  • sinat_36146776
  • 2016年10月21日 20:55
  • 913

Oracle经典查询练手第四篇

--1、 查询emp表中的所有信息 select * from emp; --2、 显示emp表的雇员名称和工资。 select ename,sal from emp; --3、 查询emp表中部...
  • u014174811
  • u014174811
  • 2015年08月04日 21:58
  • 1166

第三周程序五 数组之工资 (1)输入工资并增加工资

问题及代码 ALL rights reserved. *文件名称: 初学对象3 作者:李长鸿 *完成时间:20...
  • xslch123
  • xslch123
  • 2015年04月12日 16:42
  • 327

oracle创建一个带参数的存储过程:为指定的员工,涨100块钱的工资;并且打印涨前和涨后的薪水

--创建一个带参数的存储过程 --为指定的员工,涨100块钱的工资;并且打印涨前和涨后的薪水 /* begin raisesalary(6755); raisesalary(...
  • u012110719
  • u012110719
  • 2015年08月17日 23:21
  • 1779

C语言提高-第21讲: 首尝排序——冒个泡(工资的排序)

任务和代码: /* *All rights reserved *文件名称:main.c *作者: Osseyda 完成日期:2017.10.20 *版本号:v2. *问题描述:从文件sal...
  • sinat_39286218
  • sinat_39286218
  • 2017年10月20日 15:52
  • 95

查询出每个雇员的姓名,工资,部门名称,工资在公司的等级及其领导的姓名,领导的工资,以及领导所对应的等级

如题:查询出每个雇员的姓名,工资,部门名称,工资在公司的等级及其领导的姓名,领导的工资,以及领导所对应的等级 这是oracle的默认Scott用户下面的emp,dept 和 salgrade 表间的一...
  • magi1201
  • magi1201
  • 2015年06月05日 23:55
  • 3298

Oracle数据库中游标,异常的简单应用

•使用游标获取部门表(dept)中的部门号deptno,部门名,传递部门号到游标中,获取在此部门中工作的员工姓名,工作,参加工作时间,工资。 •如 部门号   10                ...
  • superYZG
  • superYZG
  • 2014年08月07日 13:22
  • 501

游标的使用,完全版

转载地址 http://www.cnblogs.com/adslg/archive/2010/08/17/1801469.html 游标的概念:      游标是SQL的一个内存工作区...
  • freewindgo
  • freewindgo
  • 2016年08月09日 21:25
  • 690

oracle数据库常用的99条查询语句

1. select * from emp; 2. select empno, ename, job from emp; 3. select empno 编号, ename 姓名, job ...
  • wpf416533938
  • wpf416533938
  • 2016年06月21日 12:43
  • 658
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:为所有雇员增加工资,工资在 1000 以内的增加 30%,工资在 1000~2000之间的增加 20%, 2000 以上的增加 10%。
举报原因:
原因补充:

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