¿Qué es y para que sirve SQL Joins?

Una cláusula SQL JOIN se usa para combinar filas de dos o más tablas, en función de una columna relacionada entre ellas.


 

Veamos las características principales de SQL JOIN:

 

  • SQL JOIN combina registros de dos tablas.
  • Un SQL JOIN localiza los valores de columnas relacionadas en las dos tablas.
  • Una consulta puede contener cero, uno o múltiples operaciones JOIN.
  • SQL INNER JOIN es lo mismo que SQL JOIN; la palabra clave INNER es opcional.

 

Otros artículos que te ayudaran en SQL

 

 

Diferentes tipos de SQL JOINs

 

Estos son los diferentes tipos de SQL JOINs, puedes ver la imagen principal para darte una idea visual:

 

  • (INNER) JOIN: devuelve registros que tienen valores coincidentes en ambas tablas
  • LEFT (OUTER) JOIN: Devuelve todos los registros de la tabla de la izquierda y los registros coincidentes de la tabla de la derecha
  • RIGHT (OUTER) JOIN: devuelva todos los registros de la tabla derecha y los registros coincidentes de la tabla izquierda
  • FULL (OUTER) JOIN: devuelve todos los registros cuando hay una coincidencia en la tabla izquierda o derecha

 

Sintaxis SQL JOIN ejemplos

La sintaxis general es:

SELECT column-names
  FROM table-name1 JOIN table-name2 
    ON column-name1 = column-name2
 WHERE condition

 

La sintaxis general con INNER es:

SELECT column-names
  FROM table-name1 INNER JOIN table-name2 
    ON column-name1 = column-name2
 WHERE condition

 

Nota: Recuerda que la palabra clave INNER es opcional: es la operación JOIN por defecto y la más utilizada comúnmente.

 

Tenemos dos tablas la de órdenes(ORDER) y clientes(CUSTOMER), en el ejemplo siguiente voy hacer una lista de todas las órdenes con información del cliente. La estructura y el ejemplo lo puedes ver a continuación.

 

ORDER
Id
OrderDate
OrderNumber
CustomerId
TotalAmount
CUSTOMER
Id
FirstName
LastName
City
Country
Phone

 

SELECT OrderNumber, TotalAmount, FirstName, LastName, City, Country
  FROM Order JOIN Customer
    ON Order.CustomerId = Customer.Id

El resultado será el siguiente:

OrderNumber TotalAmount FirstName LastName City Country
542378 440.00 Paul Henriot Reims France
542379 1863.40 Karin Josephs Münster Germany
542380 1813.00 Mario Pontes Rio de Janeiro Brazil
542381 670.80 Mary Saveley Lyon France
542382 3730.00 Pascale Cartrain Charleroi Belgium
542383 1444.80 Mario Pontes Rio de Janeiro Brazil
542384 625.20 Yang Wang Bern Switzerland

 

Recuerda compartir el artículo en tus redes sociales y mandarme todos tus comentarios.

Artículos relacionados
0 Comentarios
Enviame un comentario