Databases

T01-008-01 GROUP BY

Enunciado

Evidentemente, en una sentencia de agrupamiento podemos incorporar restricciones, con la claúsula WHERE. De esta forma, no se utilizarán todas las filas de la tabla a la hora de calcular los resultados parciales, sino únicamente las que cumplan las restricciones establecidas.

Ejemplo:

En el ejemplo que utilizamos en el ejercicio anterior, se tenían en cuenta aquellos empleados que no tenían asociado ningún departamento. Vamos a evitar que esto ocurra con la cláusula WHERE correspondiente:

SELECT DEPARTMENT_ID, AVG(SALARY) AS "SALARIO MEDIO"
FROM HR.employees

WHERE DEPARTMENT_ID IS NOT NULL
GROUP BY DEPARTMENT_ID

DEPARTMENT_ID SALARIO MEDIO
50 3475.555555...
40 6500
110 10154
90 19333.333333...
30 4150
70 10000
- 7000 (no aparece)
10 4400
20 9500
60 5760
100 8601.333333...
80 8955.882352...

Ejercicio:

Muestra el salario MÍNIMO y MÁXIMO de los empleados de cada uno de los tipos de trabajo existentes en el departamento cuyo identificador es el 50.

Ordena el resultado alfabéticamente, en orden inverso, según el tipo de trabajo.

Tipo

SELECT

Solución


												
SELECT JOB_ID, MIN(SALARY) AS "SALARIO MINIMO", MAX(SALARY) AS "SALARIO MAXIMO" FROM HR.employees WHERE DEPARTMENT_ID = 50 GROUP BY JOB_ID ORDER BY JOB_ID DESC

Prueba


											

Librerías (Onfly databases)