Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Lecc 05
Lecc 05
de Múltiples Tablas
5-2
Obteniendo Datos desde Múltiples Tablas
EMPLOYEES DEPARTMENTS
5-3
Tipos de Uniones
5-4
Uniendo Tablas Usando SQL:
Sintaxis de 1999
5-5
Creando Uniones Naturales
5-6
Recuperando Registros
con Uniones Naturales
SELECT department_id, department_name,
location_id, city
FROM departments
NATURAL JOIN locations ;
5-7
Creando Uniones con la cláusula USING
5-8
Uniendo nombres de columnas
EMPLOYEES DEPARTMENTS
… …
5-10
Calificando Nombres
de Columnas Ambiguas
5-11
Usando Alias de Tablas
5-12
Creando Uniones con la cláusula ON
5-13
Recuperando Registros con la cláusula ON
5-14
Creando Tres maneras de
Unión con la cláusula ON
SELECT employee_id, city, department_name
FROM employees e
JOIN departments d
ON d.department_id = e.department_id
JOIN locations l
ON d.location_id = l.location_id;
5-15
Condiciones Adicionales
5-16
Producto Cartesiano
5-17
Generando un Producto Cartesiano
EMPLOYEES (20 registros) DEPARTMENTS (8 registros)
Producto
Cartesiano:
20x8=160
registros …
5-18
Creando Uniones Cruzadas
5-19
Uniendo Tablas Usando
Sintaxis de Oracle
5-20
¿Qué es un Equijoin?
EMPLOYEES DEPARTMENTS
… …
5-21
Recuperando Registros
con “Equijoins”
5-22
Condiciones de búsqueda Adicionales
Usando el Operador AND
EMPLOYEES DEPARTMENTS
… …
5-23
Uniendo mas de dos tablas
EMPLOYEES DEPARTMENTS LOCATIONS
…
• Para unir n tablas, se necesitan un mínimo de n-1
condiciones de “join”. Por ejemplo, para unir tres
tablas, se requieren un mínimo de dos “joins”.
5-24
Non-Equijoins
EMPLOYEES JOB_GRADES
El salario en la tabla
EMPLOYEES debe estar
… entre el salario más bajo y
el salario más alto
en la tabla JOB_GRADES.
5-25
Recuperando Registros con
Non-Equijoins
5-26
“Outer Joins”
DEPARTMENTS EMPLOYEES
…
No hay empleados en el
departamento 190.
5-27
Sintaxis de “Outer Joins”
SELECT
SELECT table1.column,
table1.column, table2.column
table2.column
FROM
FROM table1,
table1, table2
table2
WHERE
WHERE table1.column(+)
table1.column(+) == table2.column;
table2.column;
SELECT
SELECT table1.column,
table1.column, table2.column
table2.column
FROM
FROM table1,
table1, table2
table2
WHERE
WHERE table1.column
table1.column == table2.column(+);
table2.column(+);
5-28
Usando “Outer Joins”
5-29
“Self Joins”
… …
5-30
Uniendo una Tabla a si misma
5-31
Práctica 5, Parte uno: Visión General
5-32
INNER contra OUTER Joins
5-33
LEFT OUTER JOIN
5-34
RIGHT OUTER JOIN
5-35
FULL OUTER JOIN
5-36
Resumen
5-37
Práctica 5, Parte dos: Visión General
5-38