Tipos de join en MySQL

En este artículo, vamos a explicar los diferentes tipos de JOIN que existen en MySQL y cómo realizar consultas con ellos. En MySQL, existen varios tipos de JOIN que permiten combinar datos de diferentes tablas en una consulta. Vamos a explicar los tipos de JOIN más comunes, junto con algunos ejemplos.

INNER JOIN en MySQL

El INNER JOIN en MySQL combina las filas de dos o más tablas siempre que haya una coincidencia en las columnas relacionadas. Este tipo de JOIN devuelve solo las filas que tienen coincidencias en ambas tablas. Ejemplo:

   SELECT t1.columna1, t2.columna2
   FROM tabla1 AS t1
   INNER JOIN tabla2 AS t2
   ON t1.columna3 = t2.columna3;

En este ejemplo, se realiza un INNER JOIN entre tabla1 y tabla2 utilizando la igualdad de columna3. El resultado será filas que tengan coincidencias en ambas tablas.

LEFT JOIN en MySQL

El LEFT JOIN o (LEFT OUTER JOIN) en MySQL devuelve todas las filas de la tabla izquierda (tabla1) y las filas coincidentes de la tabla derecha (tabla2). Si no hay coincidencias en la tabla derecha, se devuelven valores nulos. Ejemplo:

   SELECT t1.columna1, t2.columna2
   FROM tabla1 AS t1
   LEFT JOIN tabla2 AS t2
   ON t1.columna3 = t2.columna3;

En este caso, se realiza un LEFT JOIN entre tabla1 y tabla2 utilizando la igualdad de columna3. El resultado será todas las filas de tabla1, las coincidencias con tabla2 y valores nulos en tabla2 si no hay coincidencias.

RIGHT JOIN en MySQL

El RIGHT JOIN o (RIGHT OUTER JOIN) en MySQL devuelve todas las filas de la tabla derecha (tabla2) y las filas coincidentes de la tabla izquierda (tabla1). Si no hay coincidencias en la tabla izquierda, se devuelven valores nulos. Ejemplo:

   SELECT t1.columna1, t2.columna2
   FROM tabla1 AS t1
   RIGHT JOIN tabla2 AS t2
   ON t1.columna3 = t2.columna3;

Aquí, se realiza un RIGHT JOIN entre tabla1 y tabla2 utilizando la igualdad de columna3. El resultado será todas las filas de tabla2, las coincidencias con tabla1 y valores nulos en tabla1 si no hay coincidencias.

FULL JOIN en MySQL

El FULL JOIN o (FULL OUTER JOIN) en MySQL devuelve todas las filas de ambas tablas, incluidas las filas que no tienen coincidencias en la otra tabla. Si no hay coincidencias, se devuelven valores nulos. Ejemplo:

   SELECT t1.columna1, t2.columna2
   FROM tabla1 AS t1
   FULL JOIN tabla2 AS t2
   ON t1.columna3 = t2.columna3;

En este caso, se realiza un FULL JOIN entre tabla1 y tabla2 utilizando la igualdad de columna3. El resultado será todas las filas de tabla1, las coincidencias con tabla2 y valores nulos de tabla 1 y tabla2 si no hay coincidencias.

Tipos de join en MySQL

En esta imagen podemos ver esquemáticamente el funcionamiento de cada uno de los tipos de join que existen en MySQL.

Tipos de join en MySQL
Tipos de join en MySQL

Estos son los diferentes tipos de JOIN que existen en MySQL y los más utilizados. Cada uno de ellos tiene un propósito diferente para combinar los datos de las tablas. Recuerda que la elección de los tipos de JOIN en MySQL depende de los requisitos específicos de tu consulta y de la relación entre las tablas involucradas. Si quieres aprender más, puedes leer el artículo sobre las diferencias entre where y join con mysql y otros temas interesantes en la sección MySQL.

¡ Espero que este artículo sea de vuestro interés !

Deja un comentario