jueves, 1 de septiembre de 2011

beta cursor

declare
cursor cr_empleado is
select first_name, last_name, e.job_id, employee_id, salary

from employees e, jobs j
where e.job_id=j.job_id
and (lower(job_title)='finance manager'
or upper(job_title)='PROGRAMMER');

vnombre employees.first_name%type;
vapellido employees.last_name%type;
vjob_id employees.job_id%type;
vempleado_id employees.employee_id%type;
vsueldo employees.salary%type;
vsueldomin employees.salary%type;
vsueldomax employees.salary%type;
vpromedio number(8,2);
begin
open cr_empleado;
loop
FETCH cr_empleado INTO vnombre, vapellido, vjob_id, vempleado_id,
vsueldo;
exit when cr_empleado%NOTFOUND;
DBMS_output.put_line(vnombre ||' '|| vapellido ||' '|| vjob_id
||' '|| vempleado_id ||' '|| vsueldo);


select min_salary, max_salary into vsueldomin, vsueldomax
from jobs
where vjob_id=job_id;
vpromedio:=(vsueldomin + vsueldomax)/2;
if vsueldo >= vpromedio then
vmensaje := 'evaluar carga de trabajo';
else
vmensaje := 'estudiar un aumento';
end if;



end loop;
close cr_empleado;
end

No hay comentarios:

Publicar un comentario