Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Ahora vamos a practicar subconsultas y a trabajar con múltiples tablas. Utiliza las
tablas de EMPLOYEES (“EMPLEADOS”) y DEPARTMENTS (“DEPARTAMENTOS”) que hemos creado
previamente y ejecuta las consultas de las dos últimas lecciones.
Aquí están las consultas para ahorrarte algo de tiempo al teclearlas. Por favor,
ejecuta estas consultas y verifica los resultados:
Consulta A1: Introduce un fallo (es decir, que dé un error) para obtener todos los
empleados cuyo salario sea mayor que el salario medio
Select for all Queries * from employees where salary > AVG(salary)
Consulta A2: Introduce una consulta que funcione utilizando un subselect para
obtener todos los empleados cuyo salario sea mayor que el salario medio
Select for all Queries EMP_ID, F_NAME, L_NAME, SALARY from employees where SALARY >
(select AVG(SALARY) from employees);
Consulta A3: Introduce una consulta que dé fallo (es decir, que dé un error) que
obtenga todos los registros de los empleados y el salario medio en cada fila
Select for all Queries EMP_ID, SALARY, AVG(SALARY) AS AVG_SALARY from employees ;
Consulta A4: Introduce una Expresión de Columna que obtenga todos los registros de
los empleados y el salario medio en cada fila
Select for all Queries EMP_ID, SALARY, ( select AVG(SALARY) from employees ) AS
AVG_SALARY from employees ;
Consulta A5: Introduce una Expresión de Tabla que obtenga sólo las columnas con
datos no confidenciales del empleado
Select for all Queries * from ( select EMP_ID, F_NAME, L_NAME, DEP_ID from
employees) AS EMP4ALL ;
Consulta B1: Obtén sólo los registros de EMPLOYEES (“EMPLEADOS”) que correspondan a
los departamentos que hay en la tabla DEPARTMENTS (“DEPARTAMENTOS”)
Select for all Queries * from employees where DEP_ID IN ( select DEPT_ID_DEP from
departments );
Select for all Queries * from employees where DEP_ID IN ( select DEPT_ID_DEP from
departments where LOC_ID = 'L0002' );
Consulta B3: Obtén el ID del departamento y el nombre de los empleados que ganan
más de 70.000 dólares.
Select for all Queries DEPT_ID_DEP, DEP_NAME from departments where DEPT_ID_DEP IN
( select DEP_ID from employees where SALARY > 70000 ) ;
Consulta B5: Obtén sólo los registros de EMPLOYEES (“EMPLEADOS”) que correspondan a
los departamentos que hay en la tabla DEPARTMENTS (“DEPARTAMENTOS”)
Consulta B6: Utiliza alias más cortos para los nombres de las tablas
Select for all Queries EMP_ID, DEP_NAME from employees E, departments D where
E.DEP_ID = D.DEPT_ID_DEP;
Select for all Queries E.EMP_ID, D.DEP_NAME from employees E, departments D where
E.DEP_ID = D.DEPT_ID_DEP