CREATE OR REPLACE
PROCEDURE p_salary_cursor
IS
cursor c_emp_sal is
SELECT
employees.last_name,
employees.salary
FROM employees
order by employees.salary desc;
v_old_name employees.last_name%TYPE;
v_new_name employees.last_name%TYPE;
v_new_salary employees.salary%TYPE;
v_old_salary employees.salary%TYPE;
v_diff number(30);
BEGIN
open c_emp_sal;
fetch c_emp_sal into v_old_name, v_old_salary;
for i in 1..10 loop
fetch c_emp_sal into v_new_name, v_new_salary;
v_diff := v_old_salary-v_new_salary;
dbms_output.put_line(v_new_name || ' verdient um ' ||
v_diff || ' weniger als ' ||
v_old_name);
v_old_name := v_new_name;
v_old_salary := v_new_salary;
end loop;
close c_emp_sal;
END; -- Procedure
/