Databases
T01-010-01 Consultas con operaciones de conjuntos
Enunciado
INTERSECTEn la operación
INTERSECT, se examinan las filas de los dos SELECT y se devolverán aquellas que aparezcan en ambos conjuntos. Las filas duplicadas se eliminarán.Sintaxis
Consulta SELECT
INTERSECT
Consulta SELECTEl número de columnas que devuelven ambas consultas SELECT debe ser el mismo y los tipos de dichas columnas deben ser compatibles.
Ejemplo:
Muestra los empleados que están realizando un trabajo distinto al que ya han desarrollado en el mismo departamento:
SELECT DISTINCT FIRST_NAME, LAST_NAME, DEPARTMENT_ID
FROM HR.employees
INTERSECT
SELECT DISTINCT FIRST_NAME, LAST_NAME, job_history.DEPARTMENT_ID
FROM HR.job_history JOIN HR.employees USING (EMPLOYEE_ID)
FIRST_NAME LAST_NAME DEPARTMENT_ID Jonathon Taylor 80 Matthew Weiss 50 Michael Hartstein 20 Payam Kaufling 50 Ejercicio
Neena Kochhar no se encuentra cómoda en el departamento actual, por lo que está pensando en mudarse a 'UK'.
Necesita encontrar un departamento que esté en el país cuyo identificador sea 'UK' y que la media del salario sea superior a 8000
Utiliza INTERSECT para ayudar a Neena Kochhar a encontrar el departamento que necesita
Tipo
Solución
SELECT DEPARTMENT_NAME
FROM HR.EMPLOYEES JOIN HR.DEPARTMENTS USING (DEPARTMENT_ID)
GROUP BY DEPARTMENT_NAME
HAVING AVG(SALARY) > 8000
INTERSECT
SELECT DEPARTMENT_NAME
FROM HR.DEPARTMENTS JOIN HR.LOCATIONS USING(LOCATION_ID)
WHERE COUNTRY_ID = 'UK'
Prueba
LibrerÃas (Onfly databases)

