SlideShare una empresa de Scribd logo
1 de 14
JOIN
se utiliza en una sentencia SQL para consultar datos de dos o más mesas, sobre
la base de una relación entre ciertas columnas de estas tablas.
Las tablas de una base de datos a menudo se relacionan el uno al otro con las
teclas.
Una clave principal es una columna (o una combinación de columnas) con un
valor único para cada fila. Cada valor de la clave principal deben ser únicos
dentro de la tabla. El propósito es enlazar los datos juntos, a través de
tablas, sin repetir todos los datos en cada tabla.
DIFERENCIACION
• Antes de continuar con ejemplos, vamos a enumerar los tipos de
  unión que puede utilizar, y las diferencias entre ellos.
• INNER JOIN : Devuelve las filas cuando hay al menos un partido en
  ambas tablas
• LEFT JOIN : Devolver todas las filas de la tabla de la
  izquierda, incluso si no hay coincidencias en la tabla de la derecha
• RIGHT JOIN : Devolver todas las filas de la tabla de la
  derecha, incluso si no hay coincidencias en la tabla de la izquierda
• Outer Join :la diferencia es que en este tipo de combinación
  se mantienen los valores que no tienen equivalente en la otra
  tabla
• Join completo : devuelven filas cuando hay un partido en una de las
  mesas
•   Tipos de Join:
•   1. Internos (Inner Join)
•   De Equivalencia (Equi – Join)
•   Natural (Natural – Join)
•   Cruzado (Cross – Join)
•   En sí mismo (Self – Join)
•   2. Externos (Outer Join)
•   De tabla Izquierda (Left Outer Join)
•   De tabla Derecha (Right Outer Join)
•   Combinación completa (Full Outer Join)
OUTER JOIN
En el Outer Join la diferencia es que en este tipo de combinación se mantienen los
valores que no tienen equivalente en la otra tabla, esto no sucede en el Inner Join que
cuando las tablas no tienen valores equivalentes la relación botaría NULL en el resultado
y este es omitido por defecto, hay maneras de conservarlos usando Inner Join
especificando IsNull o Null, pero no nos compliquemos más, veamos los ejemplos del
Outer Join para esto relacionaremos las tablas 3 y 4 que contiene algunos valores sin
equivalente en la otra, primero hagamos un Inner Join comprobando así que no nos dá
los valores Null:
--INNER JOIN
SELECT * FROM Tabla3 INNER JOIN Tabla4 ON Tabla3.IdLetra = Tabla4.IdLetra
Como verás los valores sin equivalente son omitidos
• -De Tabla Izquierda (Left Outer Join)
El Left Outer Join nos permite hacer una mezcla y conservar todos los valores de la tabla
izquierda (la primera tabla que se menciona en la consulta) sin importar que no tengan
equivalente con la de la derecha, veamos el ejemplo:
--LEFT OUTER JOIN
SELECT * FROM Tabla3 LEFT OUTER JOIN Tabla4 ON Tabla3.IdLetra = Tabla4.IdLetra
• -De Tabla Derecha (Left Outer Join)
El Right Outer Join nos permite hacer una mezcla y conservar todos los
valores de la tabla derecha (la segunda tabla que se menciona en la
consulta) sin importar que no tengan equivalente con la primera, el
caso contrario como ven, vamos al ejemplo:
--RIGHT OUTER JOIN
SELECT * FROM Tabla3 RIGHT OUTER JOIN Tabla4 ON Tabla3.IdLetra =
Tabla4.IdLetra
• -Combinación Completa (Full Outer Join)
Con esta útlima nos permitirá hacer una mezcla total y conservar todos
los valores de ambas tablas, los valores que no tengan equivalencia
aparecerán acompañados de un Null y se mostrán todos ellos,
ejemplo:
--FULL OUTER JOIN
SELECT * FROM Tabla3 FULL OUTER JOIN Tabla4 ON Tabla3.IdLetra =
Tabla4.IdLetra
Tipos JOIN en SQL: Inner, Left, Right y Full
Tipos JOIN en SQL: Inner, Left, Right y Full
Tipos JOIN en SQL: Inner, Left, Right y Full
Tipos JOIN en SQL: Inner, Left, Right y Full
Tipos JOIN en SQL: Inner, Left, Right y Full
Tipos JOIN en SQL: Inner, Left, Right y Full

Más contenido relacionado

La actualidad más candente

Modelo entidad relación de base de datos
Modelo entidad relación de base de datosModelo entidad relación de base de datos
Modelo entidad relación de base de datosani_tuza
 
Modelo Orientado A Objetos
Modelo Orientado A ObjetosModelo Orientado A Objetos
Modelo Orientado A Objetosjose_rob
 
Clases abstractas e interfaces
Clases abstractas e interfacesClases abstractas e interfaces
Clases abstractas e interfaceslopezcortes
 
SQL Joins.pptx
SQL Joins.pptxSQL Joins.pptx
SQL Joins.pptxAnkit Rai
 
Sql DML Lenguaje de manipulación de datos
Sql DML Lenguaje de manipulación de datos Sql DML Lenguaje de manipulación de datos
Sql DML Lenguaje de manipulación de datos josecuartas
 
Estructura de Datos -Unidad III: Estructuras Lineales
Estructura de Datos -Unidad III: Estructuras LinealesEstructura de Datos -Unidad III: Estructuras Lineales
Estructura de Datos -Unidad III: Estructuras LinealesJosé Antonio Sandoval Acosta
 
Manual de conexion a una base de datos con gambas
Manual de conexion a una base de datos con gambasManual de conexion a una base de datos con gambas
Manual de conexion a una base de datos con gambasMoposita1994
 
Ejercicios resueltos de sql
Ejercicios resueltos de sqlEjercicios resueltos de sql
Ejercicios resueltos de sqlJulian Benavidez
 
Consultas multitabla clase
Consultas multitabla claseConsultas multitabla clase
Consultas multitabla claseAlejandra Vera
 
Tópicos avanzados de programación eventos
Tópicos  avanzados  de programación   eventosTópicos  avanzados  de programación   eventos
Tópicos avanzados de programación eventosKanddy Mobylml
 
Java basics and java variables
Java basics and java variablesJava basics and java variables
Java basics and java variablesPushpendra Tyagi
 
3. modelo entidad relación extendido
3. modelo entidad relación extendido3. modelo entidad relación extendido
3. modelo entidad relación extendidoGalo Anzules
 
Bases de datos orientado a objetos
Bases de datos orientado a objetosBases de datos orientado a objetos
Bases de datos orientado a objetosjorge220395
 
Objetivos y conclusiones de Access 2010
Objetivos y conclusiones de Access 2010Objetivos y conclusiones de Access 2010
Objetivos y conclusiones de Access 2010juan1924
 
Estructura de datos - Unidad 1: Introducción a las estructuras de datos
Estructura de datos - Unidad 1: Introducción a las estructuras de datosEstructura de datos - Unidad 1: Introducción a las estructuras de datos
Estructura de datos - Unidad 1: Introducción a las estructuras de datosJosé Antonio Sandoval Acosta
 

La actualidad más candente (20)

Modelo entidad relación de base de datos
Modelo entidad relación de base de datosModelo entidad relación de base de datos
Modelo entidad relación de base de datos
 
Modelo Orientado A Objetos
Modelo Orientado A ObjetosModelo Orientado A Objetos
Modelo Orientado A Objetos
 
Clases abstractas e interfaces
Clases abstractas e interfacesClases abstractas e interfaces
Clases abstractas e interfaces
 
SQL Joins.pptx
SQL Joins.pptxSQL Joins.pptx
SQL Joins.pptx
 
Sql DML Lenguaje de manipulación de datos
Sql DML Lenguaje de manipulación de datos Sql DML Lenguaje de manipulación de datos
Sql DML Lenguaje de manipulación de datos
 
Estructura de Datos -Unidad III: Estructuras Lineales
Estructura de Datos -Unidad III: Estructuras LinealesEstructura de Datos -Unidad III: Estructuras Lineales
Estructura de Datos -Unidad III: Estructuras Lineales
 
Manual de conexion a una base de datos con gambas
Manual de conexion a una base de datos con gambasManual de conexion a una base de datos con gambas
Manual de conexion a una base de datos con gambas
 
Curso SQL - Leccion 7
Curso SQL - Leccion 7  Curso SQL - Leccion 7
Curso SQL - Leccion 7
 
Ejercicios resueltos de sql
Ejercicios resueltos de sqlEjercicios resueltos de sql
Ejercicios resueltos de sql
 
Consultas multitabla clase
Consultas multitabla claseConsultas multitabla clase
Consultas multitabla clase
 
SQL Views
SQL ViewsSQL Views
SQL Views
 
Tópicos avanzados de programación eventos
Tópicos  avanzados  de programación   eventosTópicos  avanzados  de programación   eventos
Tópicos avanzados de programación eventos
 
Java basics and java variables
Java basics and java variablesJava basics and java variables
Java basics and java variables
 
3. modelo entidad relación extendido
3. modelo entidad relación extendido3. modelo entidad relación extendido
3. modelo entidad relación extendido
 
Bases de datos orientado a objetos
Bases de datos orientado a objetosBases de datos orientado a objetos
Bases de datos orientado a objetos
 
Sentencias sql
Sentencias sqlSentencias sql
Sentencias sql
 
Estructura de Datos - Unidad II Recursividad
Estructura de Datos - Unidad II RecursividadEstructura de Datos - Unidad II Recursividad
Estructura de Datos - Unidad II Recursividad
 
Modelo relacional
Modelo relacionalModelo relacional
Modelo relacional
 
Objetivos y conclusiones de Access 2010
Objetivos y conclusiones de Access 2010Objetivos y conclusiones de Access 2010
Objetivos y conclusiones de Access 2010
 
Estructura de datos - Unidad 1: Introducción a las estructuras de datos
Estructura de datos - Unidad 1: Introducción a las estructuras de datosEstructura de datos - Unidad 1: Introducción a las estructuras de datos
Estructura de datos - Unidad 1: Introducción a las estructuras de datos
 

Destacado (20)

Taller básico de JOINS, SUBQUERYING, APPLY, CTE
Taller básico de JOINS, SUBQUERYING, APPLY, CTETaller básico de JOINS, SUBQUERYING, APPLY, CTE
Taller básico de JOINS, SUBQUERYING, APPLY, CTE
 
Joins
JoinsJoins
Joins
 
Join
JoinJoin
Join
 
Cap 7. oracle SQL fundamentals
Cap 7. oracle SQL fundamentalsCap 7. oracle SQL fundamentals
Cap 7. oracle SQL fundamentals
 
Join sql
Join sqlJoin sql
Join sql
 
Join
JoinJoin
Join
 
Introducción Procesador Consultas SQL Server - Query Processor
Introducción Procesador Consultas SQL Server - Query ProcessorIntroducción Procesador Consultas SQL Server - Query Processor
Introducción Procesador Consultas SQL Server - Query Processor
 
Introducción a JOINS, CTE, APPLY y SUBCONSULTAS
Introducción a JOINS, CTE, APPLY y SUBCONSULTASIntroducción a JOINS, CTE, APPLY y SUBCONSULTAS
Introducción a JOINS, CTE, APPLY y SUBCONSULTAS
 
Taller de sql server no 3
Taller de sql server no 3Taller de sql server no 3
Taller de sql server no 3
 
Tarea dqs en ssis nunca termina
Tarea dqs en ssis nunca terminaTarea dqs en ssis nunca termina
Tarea dqs en ssis nunca termina
 
Tutorial procedure sqlserver2008.docx
Tutorial procedure sqlserver2008.docxTutorial procedure sqlserver2008.docx
Tutorial procedure sqlserver2008.docx
 
Curso SQL - Leccion 6
Curso SQL - Leccion 6Curso SQL - Leccion 6
Curso SQL - Leccion 6
 
Presentacion Sql 2
Presentacion Sql 2Presentacion Sql 2
Presentacion Sql 2
 
Agrupando datos en SQL Server
Agrupando datos en SQL ServerAgrupando datos en SQL Server
Agrupando datos en SQL Server
 
Sql joins
Sql joinsSql joins
Sql joins
 
Consultas básicas en sql server
Consultas básicas en sql serverConsultas básicas en sql server
Consultas básicas en sql server
 
SQL JOIN
SQL JOINSQL JOIN
SQL JOIN
 
Manual sql server parte 1
Manual sql server parte 1Manual sql server parte 1
Manual sql server parte 1
 
Inner join
Inner joinInner join
Inner join
 
Caso de estudio joins
Caso de estudio joinsCaso de estudio joins
Caso de estudio joins
 

Similar a Tipos JOIN en SQL: Inner, Left, Right y Full

Los inner join- Giovanna Miramontes 3aps Cecyte bc
Los inner join- Giovanna Miramontes 3aps Cecyte bcLos inner join- Giovanna Miramontes 3aps Cecyte bc
Los inner join- Giovanna Miramontes 3aps Cecyte bcGiovanna Miramontes
 
Tipos de relaciones en access
Tipos de relaciones en accessTipos de relaciones en access
Tipos de relaciones en accesspablytopch
 
Tipos de relaciones en access
Tipos de relaciones en accessTipos de relaciones en access
Tipos de relaciones en accesspablytom
 
Tipos de relaciones en access
Tipos de relaciones en accessTipos de relaciones en access
Tipos de relaciones en accesspablytom
 
Tipos de relaciones en access
Tipos de relaciones en accessTipos de relaciones en access
Tipos de relaciones en accesspablytoch8
 
Cláusulas para unir tablas en bases de datos
Cláusulas para unir tablas en bases de datosCláusulas para unir tablas en bases de datos
Cláusulas para unir tablas en bases de datosKass70
 
Principales tipos de joins en sql
Principales tipos de joins en sqlPrincipales tipos de joins en sql
Principales tipos de joins en sqlHUGOCOCA
 
Funciones de grupo
Funciones de grupoFunciones de grupo
Funciones de grupoJONATHAN1254
 
Guía 04. Consultas MySQL sobre varias tablas. Composición externa - José J Sá...
Guía 04. Consultas MySQL sobre varias tablas. Composición externa - José J Sá...Guía 04. Consultas MySQL sobre varias tablas. Composición externa - José J Sá...
Guía 04. Consultas MySQL sobre varias tablas. Composición externa - José J Sá...José Ricardo Tillero Giménez
 
Combinacion de consultas y consultas multitablas
Combinacion de consultas y consultas multitablasCombinacion de consultas y consultas multitablas
Combinacion de consultas y consultas multitablasclaudia contreras
 
Combinacion de consultas y consultas multitablas
Combinacion de consultas y consultas multitablasCombinacion de consultas y consultas multitablas
Combinacion de consultas y consultas multitablasclaudia contreras
 
Relaciones en una base de datos[1]
Relaciones en una base de datos[1]Relaciones en una base de datos[1]
Relaciones en una base de datos[1]carmenarcos
 

Similar a Tipos JOIN en SQL: Inner, Left, Right y Full (16)

Los inner join- Giovanna Miramontes 3aps Cecyte bc
Los inner join- Giovanna Miramontes 3aps Cecyte bcLos inner join- Giovanna Miramontes 3aps Cecyte bc
Los inner join- Giovanna Miramontes 3aps Cecyte bc
 
Ipv6
Ipv6Ipv6
Ipv6
 
Algebra relacional
Algebra relacionalAlgebra relacional
Algebra relacional
 
Algebra relacional
Algebra relacionalAlgebra relacional
Algebra relacional
 
Tipos de relaciones en access
Tipos de relaciones en accessTipos de relaciones en access
Tipos de relaciones en access
 
Tipos de relaciones en access
Tipos de relaciones en accessTipos de relaciones en access
Tipos de relaciones en access
 
Tipos de relaciones en access
Tipos de relaciones en accessTipos de relaciones en access
Tipos de relaciones en access
 
Tipos de relaciones en access
Tipos de relaciones en accessTipos de relaciones en access
Tipos de relaciones en access
 
Cláusulas para unir tablas en bases de datos
Cláusulas para unir tablas en bases de datosCláusulas para unir tablas en bases de datos
Cláusulas para unir tablas en bases de datos
 
Principales tipos de joins en sql
Principales tipos de joins en sqlPrincipales tipos de joins en sql
Principales tipos de joins en sql
 
Funciones de grupo
Funciones de grupoFunciones de grupo
Funciones de grupo
 
Guía 04. Consultas MySQL sobre varias tablas. Composición externa - José J Sá...
Guía 04. Consultas MySQL sobre varias tablas. Composición externa - José J Sá...Guía 04. Consultas MySQL sobre varias tablas. Composición externa - José J Sá...
Guía 04. Consultas MySQL sobre varias tablas. Composición externa - José J Sá...
 
Combinacion de consultas y consultas multitablas
Combinacion de consultas y consultas multitablasCombinacion de consultas y consultas multitablas
Combinacion de consultas y consultas multitablas
 
Combinacion de consultas y consultas multitablas
Combinacion de consultas y consultas multitablasCombinacion de consultas y consultas multitablas
Combinacion de consultas y consultas multitablas
 
Manipulacion de Bases de Datos
Manipulacion de Bases de DatosManipulacion de Bases de Datos
Manipulacion de Bases de Datos
 
Relaciones en una base de datos[1]
Relaciones en una base de datos[1]Relaciones en una base de datos[1]
Relaciones en una base de datos[1]
 

Tipos JOIN en SQL: Inner, Left, Right y Full

  • 1. JOIN se utiliza en una sentencia SQL para consultar datos de dos o más mesas, sobre la base de una relación entre ciertas columnas de estas tablas. Las tablas de una base de datos a menudo se relacionan el uno al otro con las teclas. Una clave principal es una columna (o una combinación de columnas) con un valor único para cada fila. Cada valor de la clave principal deben ser únicos dentro de la tabla. El propósito es enlazar los datos juntos, a través de tablas, sin repetir todos los datos en cada tabla.
  • 2. DIFERENCIACION • Antes de continuar con ejemplos, vamos a enumerar los tipos de unión que puede utilizar, y las diferencias entre ellos. • INNER JOIN : Devuelve las filas cuando hay al menos un partido en ambas tablas • LEFT JOIN : Devolver todas las filas de la tabla de la izquierda, incluso si no hay coincidencias en la tabla de la derecha • RIGHT JOIN : Devolver todas las filas de la tabla de la derecha, incluso si no hay coincidencias en la tabla de la izquierda • Outer Join :la diferencia es que en este tipo de combinación se mantienen los valores que no tienen equivalente en la otra tabla • Join completo : devuelven filas cuando hay un partido en una de las mesas
  • 3. Tipos de Join: • 1. Internos (Inner Join) • De Equivalencia (Equi – Join) • Natural (Natural – Join) • Cruzado (Cross – Join) • En sí mismo (Self – Join) • 2. Externos (Outer Join) • De tabla Izquierda (Left Outer Join) • De tabla Derecha (Right Outer Join) • Combinación completa (Full Outer Join)
  • 4.
  • 5.
  • 6.
  • 7. OUTER JOIN En el Outer Join la diferencia es que en este tipo de combinación se mantienen los valores que no tienen equivalente en la otra tabla, esto no sucede en el Inner Join que cuando las tablas no tienen valores equivalentes la relación botaría NULL en el resultado y este es omitido por defecto, hay maneras de conservarlos usando Inner Join especificando IsNull o Null, pero no nos compliquemos más, veamos los ejemplos del Outer Join para esto relacionaremos las tablas 3 y 4 que contiene algunos valores sin equivalente en la otra, primero hagamos un Inner Join comprobando así que no nos dá los valores Null: --INNER JOIN SELECT * FROM Tabla3 INNER JOIN Tabla4 ON Tabla3.IdLetra = Tabla4.IdLetra Como verás los valores sin equivalente son omitidos • -De Tabla Izquierda (Left Outer Join) El Left Outer Join nos permite hacer una mezcla y conservar todos los valores de la tabla izquierda (la primera tabla que se menciona en la consulta) sin importar que no tengan equivalente con la de la derecha, veamos el ejemplo: --LEFT OUTER JOIN SELECT * FROM Tabla3 LEFT OUTER JOIN Tabla4 ON Tabla3.IdLetra = Tabla4.IdLetra
  • 8. • -De Tabla Derecha (Left Outer Join) El Right Outer Join nos permite hacer una mezcla y conservar todos los valores de la tabla derecha (la segunda tabla que se menciona en la consulta) sin importar que no tengan equivalente con la primera, el caso contrario como ven, vamos al ejemplo: --RIGHT OUTER JOIN SELECT * FROM Tabla3 RIGHT OUTER JOIN Tabla4 ON Tabla3.IdLetra = Tabla4.IdLetra • -Combinación Completa (Full Outer Join) Con esta útlima nos permitirá hacer una mezcla total y conservar todos los valores de ambas tablas, los valores que no tengan equivalencia aparecerán acompañados de un Null y se mostrán todos ellos, ejemplo: --FULL OUTER JOIN SELECT * FROM Tabla3 FULL OUTER JOIN Tabla4 ON Tabla3.IdLetra = Tabla4.IdLetra