Databases
T01-007-06 Funciones de listas (opcional)
Enunciado
A continuación se muestran una tabla con funciones de listas.
Función
Descripción
GREATEST(valor1, valor2, ...)Obtiene el mayor valor de la lista
LEAST (valor1, valor2, ...)Obtiene el menor valor de la lista
La lista completa de funciones la podéis obtener de la documentación de Funciones de listas en Oracle.
Ejemplo:
La utilidad de las funciones de listas se podrá comprobar más adelante. De momento, tan solo compararemos estas funciones con las funciones
MAXyMIN.Tanto
MAXcomoMINcomparan valores de la misma columna:
SELECT MAX(SALARY), MIN(SALARY)
FROM HR.employees
MAX(SALARY) MIN(SALARY) 24000 2100 En cambio, las funciones GREATEST y LEAST comparan valores de la misma fila.
SELECT GREATEST(MIN_SALARY, MAX_SALARY), LEAST(MIN_SALARY, MAX_SALARY)
FROM HR.jobs
WHERE JOB_TITLE = 'President'
GREATEST(MIN_SALARY,MAX_SALARY) LEAST(MIN_SALARY,MAX_SALARY) 40000 20080 Ejercicio:
Se ha establecido una comisión mínima del 30% (.3) para los empleados. Calcula el sueldo de los empleados cuyo trabajo es 'SA_MAN', teniendo en cuenta que la comisión que hay que aplicar al salario es el mayor valor entre; la comisión mínima establecida (.3) y el valor del atributo COMMISSION_PCT.
Ordena el resultado alfabéticamente por los apellidos.
Tipo
Solución
SELECT FIRST_NAME, LAST_NAME, SALARY, COMMISSION_PCT, SALARY * (1 + GREATEST(COMMISSION_PCT, .3)) AS "COMISION MINIMA"
FROM HR.employees
WHERE JOB_ID = 'SA_MAN'
ORDER BY LAST_NAME
Prueba
LibrerÃas (Onfly databases)

