IOKELU
Nivel: Intermedio
💡 Prueba las consultas:
Puedes ejecutar cualquier JOIN en nuestra consola interactiva: Abrir consola SQL →

RIGHT JOIN en SQL: incluye todos los registros de la tabla derecha

RIGHT JOIN devuelve todas las filas de la tabla derecha, aunque no tengan coincidencia en la tabla izquierda. Es menos usado que LEFT JOIN, pero es útil cuando la tabla derecha es la principal del análisis.

1. ¿Qué es RIGHT JOIN?

RIGHT JOIN devuelve todas las filas de la tabla derecha, incluso si no tienen coincidencia en la tabla izquierda. Las filas sin coincidencia mostrarán valores NULL en las columnas de la tabla izquierda.


SELECT u.nombre, p.producto
FROM usuarios u
RIGHT JOIN pedidos p ON u.id = p.usuario_id;
    

2. Sintaxis de RIGHT JOIN


SELECT columnas
FROM tabla1
RIGHT JOIN tabla2
    ON tabla1.columna = tabla2.columna;
    

3. Ejemplo básico


SELECT u.nombre, p.producto
FROM usuarios u
RIGHT JOIN pedidos p 
    ON u.id = p.usuario_id;
    

4. Detectar filas sin coincidencias

RIGHT JOIN permite detectar registros en la tabla derecha sin relación en la izquierda.


SELECT p.producto
FROM usuarios u
RIGHT JOIN pedidos p 
    ON u.id = p.usuario_id
WHERE u.id IS NULL;
-- Pedidos sin usuario asociado
    

5. RIGHT JOIN con múltiples tablas


SELECT p.producto, u.nombre, c.ciudad
FROM usuarios u
RIGHT JOIN pedidos p ON u.id = p.usuario_id
RIGHT JOIN ciudades c ON p.ciudad_id = c.id;
    

6. RIGHT JOIN con condiciones adicionales


SELECT u.nombre, p.producto
FROM usuarios u
RIGHT JOIN pedidos p 
    ON u.id = p.usuario_id
    AND p.estado = 'Pendiente';
    

7. Ejemplos prácticos


SELECT e.nombre, d.nombre AS departamento
FROM empleados e
RIGHT JOIN departamentos d ON e.depto_id = d.id;

SELECT p.producto, c.nombre AS categoria
FROM productos p
RIGHT JOIN categorias c ON p.categoria_id = c.id;

SELECT p.producto, u.nombre
FROM usuarios u
RIGHT JOIN pedidos p ON u.id = p.usuario_id
WHERE u.nombre IS NULL;
-- Pedidos sin usuario
    

8. Ejercicios para practicar

9. Mini‑proyecto: Pedidos sin usuario


SELECT p.producto
FROM usuarios u
RIGHT JOIN pedidos p ON u.id = p.usuario_id
WHERE u.id IS NULL;
    

10. Errores comunes

11. Preguntas frecuentes

¿RIGHT JOIN es común?

No tanto como LEFT JOIN, pero es útil cuando la tabla derecha es la principal.

¿Puedo unir más de dos tablas?

Sí, puedes unir tantas como necesites.


Siguiente guía

SQL Intermedio – FULL JOIN →