EJERCICIOS:
Con los datos que se encuentran de departamentos y el total del salario
SET SERVEROUTPUT ON;
SET VERIFY OFF;
DECLARE
CURSOR cursEjemplo IS
SELECT d.department_name, SUM(e.salary) AS empleados
FROM departments d join employees e USING (department_id)
GROUP BY d.department_name;
v_nombre departments.department_name%TYPE;
v_poblacion employees.salary%TYPE;
BEGIN
OPEN cursEjemplo;
LOOP
FETCH cursEjemplo INTO v_nombre, v_poblacion;
EXIT WHEN cursEjemplo %NOTFOUND;
DBMS_OUTPUT.PUT_LINE(v_nombre || ',' || v_poblacion);
END
CLOSE cursEjemplo;
END;
Los empleados que sean de la region de EUROPE y si el salario es >6000 poner sueldo medio, <6000>10000 sueldo alto
SET SERVEROUTPUT ON;
SET VERIFY OFF;
DECLARE
CURSOR cursReg IS
SELECT e.first_name,e.salary
from employees e , regions r,departments d, locations l, countries c
WHERE r.region_id=c.region_id and c.country_id=l.country_id and l.location_id=d.location_id and e.department_id=d.department_id
and region_name='
v_salario EMPLOYEES.salary%TYPE;
v_nombre EMPLOYEES.first_name%TYPE;
BEGIN
OPEN cursReg;
FETCH cursReg INTO v_nombre,v_salario;
EXIT WHEN cursReg %NOTFOUND;
IF (v_salario <6000)>
DBMS_OUTPUT.PUT_LINE('Nombre empleado: '||v_nombre||' Salario Bajo: ' ||v_salario);
ELSIF (v_salario <10000)>
DBMS_OUTPUT.PUT_LINE('Nombre empleado: '||v_nombre||' Salario Medio: ' ||v_salario);
ELSE
DBMS_OUTPUT.PUT_LINE(' Nombre empleado: '||v_nombre||' Salario Alto: ' ||v_salario);
END IF;
END
CLOSE cursReg;
END;
No hay comentarios:
Publicar un comentario