Hola muchachos hace años que no uso el sql y lo necesito para crear una función almacenada que dado los código de tres empleados determine el empleado que más gana y retorne su código y salario. El mismo que deberá ser impreso a través de un bloque no nominado utilizando CASE
La impresión deberia ser similar a:
De los empleados de códigos: 101, 105, 109
El empleado 105 es quién más gana y su salario es de 1700
Gracias tengo esto apenas :/
Código SQL:
Ver originalCREATE OR REPLACE FUNCTION fn106(n n1 NUMBER, n2 NUMBER, n3 NUMBER ,v_empno emp.empno%TYPE) RETURN varchar2 IS
v_msg varchar2(40);
v_sal emp.sal%TYPE;
mayor NUMBER := 0;
BEGIN
SELECT sal INTO v_sal FROM emp WHERE empno = v_empno;
CASE
WHEN (v_sal > 0 AND v_sal <= ) THEN
v_msg := 'v_sal';
WHEN (v_sal > 2500 AND v_sal <= 4000) THEN
v_msg := 'Salario Regular';
WHEN (v_sal > 4000) THEN
v_msg := 'Salario Bueno';
ELSE v_msg := 'Caso Desconocido'; END CASE;
v_msg := to_char(v_sal) || ' - ' || v_msg;
RETURN v_msg;
END;