|
S.Q.L. Concepto de JOIN
- Un JOIN se utiliza para consultar datos de más de una tabla
- La condición de JOIN se escribe en la cláusula WHERE.
- Si existen columnas con el mismo nombre en las tablas seleccionadas, se deberán nombrar los campos
- Ejemplo:
S.Q.L. Tipos de JOIN
- Existen dos tipos principales de JOIN:
- EQUIJOIN
Join sobre dos o más tablas, por igualdad de campos.
- NON-EQUIJOIN
Por desigualdad, sin correspondencia directa entre campos de tablas. La relación se puede establecer mediante criterios de rango (<, >, BETWEEN, ...)
- Y dos más adicionales:
- OUTER JOIN
Para ver, también, las filas que no complen la condición de Join. El operador de un Outer Join es el signo más (+), en el “lado” del join que es deficiente en información.
- SELF JOIN
Combinación de una tabla consigo misma.
S.Q.L. Ejemplo de Equijoin
- Ya que la columna DEPTNO es igual en ambas tablas, ésta debe ir prefijada por el nombre de la tabla para evitar la ambigüedad.
S.Q.L. Ejemplo de Non-Equijoins
- En este ejemplo se han usado alias de tablas (e para la tabla emp y s para la tabla salgrade).
S.Q.L. Ejemplo de Outer Join
- En este ejemplo se muestran los números y nombres de todos los departamentos, incluidos aquellos que no tienen empleado.
- Si se le añade: AND emp.deptno is null, sólo se mostrarían las no coincidencias.
S.Q.L. Ejemplo de Self Join
- En este ejemplo la cláusula WHERE contiene la combinación "dónde un jefe de un trabajador coincide con el número de empleado para el jefe".
|