使用游标创建PL / SQL块,以更新员工表上的工资列,以及通过键盘输入的特定部门中的员工。 规则提高了工资:
在更新的员工表上显示employee_id,last_name,旧职位,新薪水。
输入d_id的值:30
EMPLOYEE_ID LAST_NAME LAMAKERJA SALARY
----------- ------------------------- ---------- ----------
119 Colmenares 16.1452239 3000
118 Himuro 16.8794705 3120
116 Baida 17.7726212 3480
117 Tobias 18.1917992 3360
115 Khoo 20.3781006 3720
114 Raphaely 20.8219362 13200
6 rows selected.
答案 0 :(得分:0)
为了让你开始:年龄是一个常见的问题,所以让我们假设我的琐碎计算完成了这项工作。遍历所有员工,检查您被告知的条件并更新员工的工资。最后的SELECT
完全取决于你。
FOR cur_r
IN (SELECT employee_id, TRUNC ( (SYSDATE - date_of_birth) / 365.25) age
FROM employees)
LOOP
UPDATE employees e
SET e.salary =
e.salary * CASE
WHEN age ... THEN ...
WHEN age ... THEN ...
END
WHERE e.employee_id = ...
END LOOP;