M2 - Bases de dades / Exercicis UF2: Llenguatges SQL / Exercicis T5-HR
Determine la validez de las tres sentencias siguientes. Seleccione Verdadero o Falso.
1) Las funciones de grupo funcionan en varias filas para producir un resultado por grupo.
Verdadero/Falso
2) Las funciones de grupo incluyen valores nulos en los cálculos.
Verdadero/Falso
3) La cláusula WHERE restringe las filas antes de incluirlas en un cálculo de grupo.
Verdadero/Falso
El departamento de recursos humanos necesita los siguientes informes:
4) Encontrar el valor más alto, el valor más bajo, la suma y la media del salario de todos los empleados. Etiquete las columnas como Maximum, Minimum, Sum y Average, respectivamente. Redondee los resultados al número entero más cercano. Guarde la sentencia SQL como lab_05_04.sql. Ejecute la consulta.
Maximum Minimum Sum Average ------- ------- ------ ------- 1 24000 2100 691416 6462
5) Modifique la consulta del archivo lab_05_04.sql para mostrar el valor mínimo, el valor máximo, la suma y la media del salario de cada tipo de cargo. Vuelva a guardar lab_05_04.sql como lab_05_05.sql. Ejecute la sentencia en el archivo lab_05_05.sql.
JOB_ID Maximum Minimum Sum Average ---------- ------- ------- ------ ------- 1 IT_PROG 9000 4200 28800 5760 2 AC_MGR 12008 12008 12008 12008 3 AC_ACCOUNT 8300 8300 8300 8300 4 ST_MAN 8200 5800 36400 7280 5 PU_MAN 11000 11000 11000 11000 ...
6) Escriba una consulta para mostrar el número de personas con el mismo cargo.
JOB_ID COUNT(*) ---------- -------- 1 AC_ACCOUNT 1 2 AC_MGR 1 3 AD_ASST 1 4 AD_PRES 1 5 AD_VP 2 ...
Generalice la consulta para preguntar al usuario del departamento de recursos humanos cuál es su puesto. Guarde el script en un archivo denominado lab_05_06.sql. Ejecute la consulta. Introduzca IT_PROG cuando se le solicite y haga clic en OK.
JOB_ID COUNT(*) ------- -------- 1 IT_PROG 5
7) Determine el número de gestores sin enumerarlos en una lista. Etiquete la columna como Number of Managers.
Indicación: utilice la columna MANAGER_ID para determinar el número de gestores.
Number of Managers ------------------ 1 18
8) Busque la diferencia entre los salarios más altos y más bajos. Etiquete la columna como DIFFERENCE.
DIFFERENCE ---------- 1 21900
Si tiene tiempo, realice los siguientes ejercicios:
9) Cree un informe para mostrar el número de gestor y el salario del empleado con menor sueldo de ese gestor. Excluya a cualquier trabajador del que desconozca su gestor. Excluya cualquier grupo en el que el salario mínimo sea 6.000 dólares o menos. Ordene la salida en orden descendente de salarios.
MANAGER_ID MIN(salary) ---------- ----------- 1 102 9000 2 205 8300 3 145 7000 4 146 7000 5 108 6900 ...
Si desea superarse a sí mismo, complete los siguientes ejercicios:
10) Cree una consulta que muestre el número total de empleados y, de ese total, el número de empleados contratados en 2005, 2006, 2007 y 2008. Cree las cabeceras de columna adecuadas.
TOTAL 2005 2006 2007 2008 ----- ---- ---- ---- ---- 1 107 29 24 19 11
11) Cree una consulta de matriz para mostrar el cargo, el salario de ese cargo según el número de departamento y el salario total del cargo para los departamentos 20, 50, 80 y 90, proporcionando a cada columna una cabecera adecuada.
Job Dept 20 Dept 50 Dept 80 Dept 90 Total ---------- ------- ------- ------- ------- ----- 1 IT_PROG (null) (null) (null) (null) 28800 2 AC_MGR (null) (null) (null) (null) 12008 3 AC_ACCOUNT (null) (null) (null) (null) 8300 4 ST_MAN (null) 36400 (null) (null) 36400 5 PU_MAN (null) (null) (null) (null) 11000 ...