You are on page 1of 11

19/04/2016

Sub-consultas y Operadores de
Conjunto
Base de Datos

Objetivos

Definir y aplicar sub-consultas de una o varias filas.


Aplicar operadores de conjunto en las consultas.

19/04/2016

Objetivos del Curso

Reconocer la importancia de las bases de datos y sus mltiples aplicaciones.


Manipular la base de datos con sentencias DML.
Identificar y manejar funciones de base de datos.
Analizar y disear el modelo de datos.
Identificar los componentes del ODBC y JDBC para la conexin a Base de Datos.
Identificar los componentes de la arquitectura de la base de datos.
Administrar las estructuras de almacenamiento y manejo de usuarios.

Resultados del Programa

d. Los estudiantes disean y optimizan redes de computadoras y sistemas de


telecomunicaciones de datos con creatividad.

e. Los estudiantes trabajan eficazmente en equipo.

g. Los estudiantes se comunican efectivamente de manera oral, escrita y


grfica.

19/04/2016

Sub-consultas

Definicin de Sub-consulta
Una sub-consulta es una consulta anidada en una
instruccin SELECT, INSERT, UPDATE o DELETE.
Puede retornar una o varias filas a la consulta que la
invoca.
Una sub-consulta escalar es la que retorna un solo valor.
En las Subconsultas existen:
Consulta Interna
Consulta Externa
Responder a: Quiero saber quin(es) gana(n) mas que
Abel?

19/04/2016

Main query (Consulta principal )


Subquery (Subconsulta)

Estructura de una Sub-consulta


Una sub-consulta debe incluir las siguientes
clusulas:
SELECT
FROM
Opcionalmente, puede usar las clusulas:
WHERE
GROUP BY
HAVING
8

19/04/2016

Ejemplo de Sub-consulta
La consulta interna se ejecuta
SELECT sysdate Hoy,
primero que la externa
(SELECT count(*) FROM HR.departments)
cuenta_Dept,
(SELECT count(*) FROM HR.employees)
cuenta_Emp
FROM dual;

Ejemplo de Sub-consulta
SELECT employee_id, first_name, last_name FROM HR.employees
WHERE employee_id IN
(SELECT manager_id FROM HR.employees);

El resultado de la
subconsuta es
usado para la
consulta principal
10

19/04/2016

Ejemplo de Sub-consulta

11

Ejercicios de Sub-consultas

12

19/04/2016

Operadores de Conjunto

13

Definicin de Operadores de Conjunto


Una instruccin SELECT retorna un conjunto de filas.
Los operadores de conjunto utilizan como entrada el
resultado de dos o ms instrucciones SELECT para
generar un conjunto de filas.
A este tipo de consultas se les denomina consulta
compuesta.

14

19/04/2016

Operadores de Conjunto
Tipo
UNION
UNION ALL
INTERSECT
MINUS

Descripcin
Retorna filas combinadas de dos consultas,
ordenadas y eliminando duplicados.
Retorna filas combinadas de dos consultas, sin
ordenar ni eliminar duplicados.
Retorna filas comunes a ambas consultas,
ordenadas y eliminando duplicados.
Retorna las filas del primer conjunto que no
aparezcan en el segundo conjunto, ordenadas y
eliminando duplicados.
15

UNION.
Elimina los valores duplicados

B
A

+ =

AyB

SELECT employee_id, salary FROM HR.employees


WHERE salary>20000
UNION
SELECT employee_id, salary FROM HR.employees
WHERE salary BETWEEN 15000 AND 25000;

16

19/04/2016

UNION ALL

AyB

No elimina los valores duplicados

SELECT employee_id, salary FROM HR.employees


WHERE salary>20000
UNION ALL
SELECT employee_id, salary FROM HR.employees
WHERE salary BETWEEN 15000 AND 25000;

17

INTERSECT.

Retorna filas comunes a ambas consultas,


ordenadas y eliminando duplicados.

SELECT employee_id, salary FROM HR.employees


WHERE salary>20000
INTERSECT
SELECT employee_id, salary FROM HR.employees
WHERE salary BETWEEN 15000 AND 25000;

18

19/04/2016

MINUS

Retorna las filas del primer conjunto que


no aparezcan en el segundo conjunto,
ordenadas y eliminando duplicados.

SELECT employee_id, salary FROM HR.employees


WHERE salary BETWEEN 15000 AND 25000
MINUS
SELECT employee_id, salary FROM HR.employees
WHERE salary>20000;

19

20

10

19/04/2016

Referencias
Ramklass, Roopesh (2014). Cap. 8 Using
Subqueries to Solve Problems. En SQL
Fundamentals I Exam Guide (Exam IZ0-061) (pp.
365-394). EEUU: McGraw-Hill.
Ramklass, Roopesh (2014). Cap. 9 Using the Set
Operators. En SQL Fundamentals I Exam Guide
(Exam IZ0-061) (pp. 395-421). EEUU: McGraw-Hill.

21

FIN DE LA UNIDAD

11

You might also like