La cláusula `INNER JOIN` de MySQL se utiliza para recuperar filas de dos o más tablas basándose en una columna común de ambas tablas. Devuelve sólo las filas que tienen valores coincidentes en ambas tablas.
Utilización
La cláusula `INNER JOIN` se utiliza cuando necesitas seleccionar datos de varias tablas en las que haya una coincidencia en las columnas especificadas. Se suele utilizar en sentencias `SELECT` para combinar filas de diferentes tablas.
sql
SELECT columns
FROM table1
INNERJOIN table2 ON table1.column_name = table2.column_name;Con la tecnología de
En esta sintaxis, `INNER JOIN` combina filas de `tabla1` y `tabla2` en las que coinciden los valores de `nombre_columna`. Ten en cuenta que si no hay filas coincidentes en ninguna de las dos tablas, no se devolverá ninguna fila.
Ejemplos
1. Unión interna básica
sql
SELECT employees.name, departments.department_name
FROM employees
INNERJOIN departments ON employees.department_id = departments.id;Con la tecnología de
Este ejemplo recupera los nombres de los empleados junto con sus respectivos nombres de departamento uniendo las tablas `employees` y `departments` en las coincidencias `department_id` e `id`.
2. Unión interna con condiciones adicionales
sql
SELECT orders.order_id, customers.customer_name
FROM orders
INNERJOIN customers ON orders.customer_id = customers.id
WHERE orders.order_date >'2023-01-01';Con la tecnología de
Esta consulta recupera los ID de los pedidos y los nombres de los clientes de los pedidos realizados después del 1 de enero de 2023, utilizando una unión interna entre las tablas "pedidos" y "clientes".
3. Unión interna con varias tablas
sql
SELECT students.name, courses.course_name, grades.grade
FROM students
INNERJOIN grades ON students.id = grades.student_id
INNERJOIN courses ON grades.course_id = courses.id;Con la tecnología de
Este ejemplo une tres tablas: `estudiantes`, `calificaciones` y `cursos`, para mostrar el nombre de cada estudiante, los cursos en los que está matriculado y sus calificaciones.
Consejos y buenas prácticas
Utiliza referencias explícitas a las columnas. Utiliza siempre el nombre de la tabla o el alias con los nombres de las columnas para evitar ambigüedades.
Garantizar columnas de unión indexadas. Indexa las columnas de unión para mejorar el rendimiento de la consulta.
Filtra pronto. Aplica las cláusulas "DONDE" pronto para minimizar los datos antes de unirlos.
Utiliza alias de tabla. Utiliza alias de tablas para simplificar las consultas y mejorar la legibilidad.
Limita los resultados. Aplica `LIMIT` para recuperar sólo los datos necesarios, reduciendo la carga de la base de datos.
Nota
El tipo de unión por defecto es `INNER JOIN` si no se indica un tipo específico al utilizar la palabra clave `JOIN`.
La cláusula `INNER JOIN` de MySQL se utiliza para recuperar filas de dos o más tablas basándose en una columna común de ambas tablas. Devuelve sólo las filas que tienen valores coincidentes en ambas tablas.
Utilización
La cláusula `INNER JOIN` se utiliza cuando necesitas seleccionar datos de varias tablas en las que haya una coincidencia en las columnas especificadas. Se suele utilizar en sentencias `SELECT` para combinar filas de diferentes tablas.
En esta sintaxis, `INNER JOIN` combina filas de `tabla1` y `tabla2` en las que coinciden los valores de `nombre_columna`. Ten en cuenta que si no hay filas coincidentes en ninguna de las dos tablas, no se devolverá ninguna fila.
Ejemplos
1. Unión interna básica
Este ejemplo recupera los nombres de los empleados junto con sus respectivos nombres de departamento uniendo las tablas `employees` y `departments` en las coincidencias `department_id` e `id`.
2. Unión interna con condiciones adicionales
Esta consulta recupera los ID de los pedidos y los nombres de los clientes de los pedidos realizados después del 1 de enero de 2023, utilizando una unión interna entre las tablas "pedidos" y "clientes".
3. Unión interna con varias tablas
Este ejemplo une tres tablas: `estudiantes`, `calificaciones` y `cursos`, para mostrar el nombre de cada estudiante, los cursos en los que está matriculado y sus calificaciones.
Consejos y buenas prácticas
Nota
El tipo de unión por defecto es `INNER JOIN` si no se indica un tipo específico al utilizar la palabra clave `JOIN`.