Title: Funciones definidas por el usuario
Course: 2025 - LISI - Bases de Datos Avanzadas 3-1

Al igual que las funciones de los lenguajes de programación, las funciones definidas por el usuario de SQL Server son rutinas que aceptan parámetros, realizan una acción, como un cálculo complejo, y devuelven el resultado de esa acción como un valor. El valor devuelto puede ser un valor escalar único o un conjunto de resultados.

Puede crear la función una vez, almacenarla en la base de datos y llamarla desde el programa tantas veces como desee. Las funciones definidas por el usuario se pueden modificar, independientemente del código de origen del programa.

Tabla empleados:

id_empleado | nombre | fecha_nacimiento | sueldo
1 | Omar Ortiz | 10/01/02 | 7500
2 | Juan López | 30/09/82 | 18000
3 | Maria Zaldivar | 25/08/97 | 11200
4 | Carmen Ponce | 18/06/92 | 6500
5 | Emilio Vizcarra | 14/02/00 | 25000

La siguiente función obtiene los años de los empleados en base a su fecha de nacimiento

DELIMITER $$

CREATE FUNCTION edad(fecha_nac DATE)

RETURNS INT

DETERMINISTIC

BEGIN

    DECLARE edad INT;

    SET edad = TIMESTAMPDIFF(YEAR, fecha_nac, CURDATE());

    RETURN edad;

END$$

DELIMITER ;

La podemos usar con la siguiente consulta: SELECT nombre, edad(fecha_nacimiento) AS edades FROM empleados;

Actividad a realizar:

Crear una función que diga si el sueldo el alto, medio o bajo dependiendo de los siguientes criterios

- Alto: más de 20 mil
- Medio: entre 10 mil y 20 mil
- Bajo: menos de 10 mil

Insertar 15 registros más a la tabla de empleados

Subir tus imágenes de recorte de pantalla de la tabla inicial y la resultante con la función, el empleado número 20 poner tu nombre y apellido.