Vida informatica

Páginas: 12 (2757 palabras) Publicado: 24 de abril de 2013
26/09/2011

Join - Wikipedia, la enciclopedia libre

Join
De Wikipedia, la enciclopedia libre
La sentencia join en SQL permite combinar registros de dos o más tablas en una base de datos relacional. En el Lenguaje de
Consultas Estructurado (SQL), hay tres tipo de JOIN: interno, externo, y cruzado.
En casos especiales una tabla puede unirse a sí misma, produciendo una auto-combinación,SELF-JOIN.
Matemáticamente, JOIN es composición relacional, la operación fundamental en el álgebra relacional, y generalizando es una función
de composición.

Contenido
1 Tablas de ejemplo
2 Combinación interna (INNER JOIN)
2.1 De equivalencia (equi-join)
2.1.1 Natural (Natural join)
2.2 Cruzada (Cross join)
3 Combinación externa (OUTER JOIN)
3.1 de tabla izquierda (LEFT OUTER JOIN o LEFTJOIN)
3.2 de tabla derecha (RIGHT OUTER JOIN o RIGHT JOIN)
3.3 combinación completa (FULL OUTER JOIN)
4 Implementación
4.1 Algoritmos de combinación
4.1.1 Bucles anidados
4.1.2 Combinación por fusión
4.1.3 Combinación Hash
4.2 Optimización de la combinación
4.2.1 Semi-combinación
5 Véase también
6 Enlaces externos

Tablas de ejemplo
Todas las explicaciones que están a continuaciónutilizan las siguientes dos tablas para ilustrar el efecto de diferentes clases de
uniones JOIN.
Tabla Empleado
Apellido IDDepartamento
Andrade

31

Jordán

33

Steinberg

34

Zolano

31

Ingeniería

33

Producción

34

Mercadeo

35

34

Gaspar

Ventas

33

Róbinson

Tabla Departamento
NombreDepartamento IDDepartamento

36http://es.wikipedia.org/wiki/Join

1/8

26/09/2011

Join - Wikipedia, la enciclopedia libre

La tabla Empleado contiene a los empleados con el número del departamento al que pertenecen; mientras que la tabla
Departamento, contiene el nombre de los departamentos de la empresa, se puede notar que existe un empleado que tiene asignado
un número de departamento que no se encuentra en la tabla Departamento (Gaspar),igualmente, en la tabla Departamento existe un
departamento al cual no pertenece empleado alguno (Mercadeo). Esto servirá para presentar algunos ejemplos más adelante.

Combinación interna (INNER JOIN)
Con esta operación se calcula el producto cruzado de todos los registros; así cada registro en la tabla A es combinado con cada
registro de la tabla B; pero sólo permanecen aquellos registros enla tabla combinada que satisfacen las condiciones que se
especifiquen. Este es el tipo de JOIN más utilizado por lo que es considerado el tipo de combinación predeterminado.
SQL:2003 especifica dos formas diferentes para expresar estas combinaciones. La primera, conocida como explícita usa la palabra
JOIN, mientras que la segunda es implícita y usa ',' para separar las tablas a combinar en lasentencia FROM de la declaración
SELECT. Entonces siempre se genera el producto cruzado del cual se seleccionan las combinaciones que cumplan lo que indica la
sentencia WHERE.
Es necesario tener especial cuidado cuando se combinan columnas con valores nulos NULL ya que el valor nulo no se combina con
otro valor o con otro nulo, excepto cuando se le agregan predicados tales como IS NULL o IS NOTNULL.
Como ejemplo, la siguiente consulta toma todos los registros de la tabla Empleado y encuentra todas las combinaciones en la tabla
Departamento. La sentencia JOIN compara los valores en la columna IDDepartamento en ambas tablas. Cuando no existe esta
correspondencia entre algunas combinaciones, éstas no se muestran; es decir que si el número de departamento de un empleado no
coincide conlos números de departamento de la tabla Departamento, no se mostrará el empleado con su respectivo departamento
en la tabla resultante.
Las dos consultas siguientes son similares, y se realizan de manera explicita (A) e implícita (B).
A. Ejemplo de la sentencia INNER JOIN explícita:
SELECT *
FROM
empleado
INNER JOIN departamento
ON empleado.IDDepartamento = departamento.IDDepartamento...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • La vida informatica
  • Informatica en la vida cotidiana
  • El impacto de la informatica en nuestras vidas
  • ENSAYO LA INFORMATICA EN LA VIDA DIARIA
  • informática para la vida real
  • Sistemas Expertos En La Vida Informatica
  • la informatica en la vida diaria
  • Ciclo de vida de un sistema informático

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS