¿Cómo funciona INNER JOIN, LEFT JOIN, RIGHT JOIN y FULL JOIN?

Clase 28 de 36Curso de Bases de Datos con SQL

Resumen

¿Cómo implementar lo aprendido sobre joins en consola?

El trabajo con bases de datos es esencial para cualquier profesional en el campo de la tecnología y la ciencia de datos. Utilizar los joins de manera eficiente puede ayudarte a conectar múltiples tablas rápidamente. Aquí aprenderás cómo replantear toda una base de datos y practicar la creación de tablas y la inserción de datos desde la consola.

¿Cómo recrear la base de datos?

  1. Crear la base de datos: Es necesario definir el esquema y estructura de la base de datos, incluyendo las tablas, sus columnas y los tipos de datos adecuados para cada columna.
  2. Identificar claves primarias: Las claves primarias son esenciales para identificar de manera única cada registro dentro de una tabla.
  3. Registrar claves foráneas: Permiten relacionar tablas y asegurar la integridad de los datos.

Ejemplo de Código SQL:

CREATE TABLE productos (
    id INT PRIMARY KEY,
    nombre VARCHAR(255),
    marca VARCHAR(255),
    precio DECIMAL(10, 2)
);

CREATE TABLE marcas (
    id INT PRIMARY KEY,
    nombre VARCHAR(255)
);

-- Insertar datos
INSERT INTO productos (id, nombre, marca, precio) VALUES (1, 'Producto1', 'MarcaA', 100.00);
INSERT INTO marcas (id, nombre) VALUES (1, 'MarcaA');

¿Cómo ejecutar joins en consola?

La sentencia básica SELECT * FROM se utiliza para consultar todas las columnas de una tabla. Los Joins permiten combinar registros de dos o más tablas.

Ejemplo de Inner Join:

SELECT p.*, m.nombre 
FROM productos p
INNER JOIN marcas m ON p.marca = m.id;
  • El INNER JOIN conecta las dos tablas usando las claves primarias y foráneas establecidas.

¿Cómo realizar un join de tipo Right, Left o Full Outer?

La única diferencia entre los tipos de joins radica en la palabra clave utilizada en la sentencia SQL.

Cambios en el Join:

  1. Right Join: Muestra todos los registros de la tabla a la derecha y los registros coincidentes de la tabla a la izquierda.

    SELECT p.*, m.nombre 
    FROM productos p
    RIGHT JOIN marcas m ON p.marca = m.id;
    
  2. Left Join: Proporciona todos los registros de la tabla a la izquierda y los coincidentes de la tabla a la derecha.

    SELECT p.*, m.nombre 
    FROM productos p
    LEFT JOIN marcas m ON p.marca = m.id;
    
  3. Full Outer Join: Combina el Right Join y el Left Join.

    SELECT p.*, m.nombre 
    FROM productos p
    FULL OUTER JOIN marcas m ON p.marca = m.id;
    

¿Por qué es importante el nombramiento adecuado de tablas en joins?

El uso de alias para tablas puede simplificar las consultas. Sin embargo, para procedimientos más complejos, el uso de nombres cortos o una sola letra como alias puede ser confuso. Es recomendable usar nombres significativos que denoten con claridad la conexión que se está realizando entre las tablas. Esto facilita la comprensión, el mantenimiento y el soporte del código.

  • Buenas prácticas:
    • Usa nombres intuitivos y descriptivos para alias de tablas.
    • Evita nombres genéricos que no den contexto.
    • Asegúrate de que el nombramiento sea coherente en todo tu código.

Recuerda continuar practicando y refinando tus habilidades con bases de datos. ¡La experiencia y la dedicación son clave para dominar esta área y enfrentar procesos de desarrollo de software con éxito!