Cómo hacer INNER Join en SQL (Ejemplos)


Ejemplos de INNER JOIN MYSQL

Muchos estudiantes de programación, han tenido dificultad al momento de hacer INNER JOIN en tablas de base de datos ne MySQL. Esta Query o consulta  selecciona registros que tienen valores coincidentes en ambas tablas. ¿Les gustaría saber con detalles ¿cómo hacer INNER Join en MySQL? Muy bien, entonces sigan leyendo atentamente.

Estructura INNER JOIN
Select columna from tabla1
INNER JOIN tabla 2 ON tabla1.columna = tabla2.columna

Esta esta la estructura general para realizar INNER JOIN en MySQL y en MariDB. A continuación se mostrarán una serie de ejemplos para aplicar esta query:

INNER JOIN varias tablas

1) Se requiere el id_usuario, nombre y pasatiempo de los usuarios, de las siguientes tablas:

TABLA USUARIO

Id_clienteNombreId_pasatiempoSitio web favorito
1Rodrigo Antonio1AndroidOS.cl
2Andro OS1AndroidOS.cl
2Macarena Miranda2Trucosgalaxy.com
3Alfonso Maldonado3Iphonemovil.com
4Paolo Anderson4Ninguno
5Carl johnson1AndroidOS.cl

TABLA PASATIEMPO

Id_pasatiempopasatiempo
1Leer
2Escribir
3Fumar
4Leer
5Escribir

QUERY:
SELECT usuario. id_usuario, usuario.nombre, pasatiempo.pasatiempo from usuario
INNER JOIN pasatiempo ON pasatiempo.id_pasatiempo = usuario.id_pasatiempo

Cómo hacer un INNER JOIN

En sencillas palabras, el INNER JOIN se encarga de hacer la conexión de atributos en comunes con las tablas, para que se puedan mostrar los atributos/columnas que se solicitan. Un viejo truco es empezar de abajo hacia arriba, es decir, realizar el/los INNER JOIN y luego el SELECT.

Como resultado de la QUERY se obtendrá lo siguiente: 

Id_clienteNombrepasatiempo
1Rodrigo AntonioLeer
2Andro OSLeer
2Macarena MirandaEscribir
3Alfonso MaldonadoFumar
4Paolo AndersonLeer y escribir
5Carl johnsonLeer

Como pueden ver, hacer un INNER JOIN es muy fácil. En caso de hacer JOIN desde una tabla maestra hacia varias tablas periféricas. A continuación se hará un JOIN en base al ejemplo anterior, utilizando una tabla extra con nombre “COMIDA FAVORITA”. De este ejemplo, se requiere el id_usuario, nombre del mismo, pasatiempo y comida favorita.

TABLA COMIDA

Id_comidaComida_favorita
1Papas fritas
2Pollo Asado
3Empanadas
4Manzana
5Pera


TABLA USUARIO (EJEMPLO ANTERIOR + NUEVA COLUMNA)

Id_clienteNombrepasatiempoId_comida
1Rodrigo AntonioLeer1
2Andro OSLeer1
2Macarena MirandaEscribir2
3Alfonso MaldonadoFumar2
4Paolo AndersonLeer y escribir3
5Carl johnsonLeer1

 

TABLA PASATIEMPO (EJEMPLO ANTERIOR)

Id_pasatiempopasatiempo
1Leer
2Escribir
3Fumar
4Leer y escribir
5Escribir

QUERY:
SELECT usuario. id_usuario, usuario.nombre, pasatiempo.pasatiempo from usuario
INNER JOIN pasatiempo ON pasatiempo.id_pasatiempo = usuario.id_pasatiempo
INNER JOIN comida ON comida.id_comida = usuario.id_comida

Resultado de la QUERY:

Id_clienteNombrepasatiempocomida
1Rodrigo AntonioLeerPapas fritas
2Andro OSLeerPapas fritas
2Macarena MirandaEscribirPollo Asado
3Alfonso MaldonadoFumarPollo Asado
4Paolo AndersonLeer y escribirEmpanadas
5Carl johnsonLeerPapas fritas

 

Eso es todo. Pueden aplicar este método para SGBD de Oracle (MariaDB y MySQL) y Microsoft (SQL Server y Access SQL) ¿Conforme con lo visto? ¿Tiene algo que aportar? Sí es así, pueden dejar un comentario en la sección de más abajo.

Cómo hacer INNER Join en SQL (Ejemplos)
Calificar

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *