Tutoriales

Fusionar dos tablas en SQL

En SQL, la combinación de tablas es el proceso de combinar datos de dos tablas separadas en una base de datos determinada en una sola unidad basada en una columna o condición común. Sí, si suena a mesa, es una mesa.

Las uniones o fusiones de tablas son características bien conocidas de las bases de datos relacionales y son muy poderosas. Nos permite integrar información de múltiples fuentes para crear conocimientos de datos más coherentes y significativos. También permite que los repositorios asociativos sean altamente escalables (inflexibles) porque podemos dividir el repositorio en partes más pequeñas y manejables a las que se puede hacer referencia más adelante.

En este tutorial, cubriremos los conceptos básicos de la unión o fusión de tablas. Veamos ejemplos de tablas del mundo real para solidificar nuestro conocimiento.

tabla de muestra

Antes de saltar al mundo de las uniones de tablas, configuremos una tabla básica que se utilizará con fines de demostración.

Considere dos tablas que contienen información sobre empleados y salarios, como se muestra en la siguiente consulta de ejemplo:

Crear formulario empleado(

Publicaciones relacionadas

Clave primaria de incremento automático de ID de empleado INT,

nombreVARCHAR(50),

ApellidoVARCHAR(50),

DepartamentoVARCHAR(50)

);

Luego podemos insertar los datos de muestra en la tabla de empleados, como se muestra en la siguiente consulta:

Insertar valores de empleado (nombre, apellido, departamento)

('Alicia', «Herrero», 'recursos humanos'),

('Beto', 'Johnson', 'marketing'),

(«Charlie», «Wilson», 'finanzas'),

('David', 'Marrón', 'Ventas'),

('eva', 'davis', 'proyecto');

Sigamos adelante y creemos una nueva tabla para almacenar información salarial como se muestra a continuación:

Crear una tabla de salarios (

salarial_id INT clave primaria de incremento automático,

ID de empleado INT,

salario decimal (10, 2),

fecha de inicio fecha,

fecha de finalización,

La clave externa (employee_id) se refiere al empleado (employee_id)

);

Agregue los datos de muestra de inserción a la tabla de la siguiente manera:

Insertar valores de salario (ID de empleado, salario, fecha de inicio, fecha de finalización)
(1, 60000.00, '2023-01-01', '31 de diciembre de 2023'),
(2, 55000.00, '2023-01-01', '31 de diciembre de 2023'),
(3, 65000.00, '2023-01-01', '31 de diciembre de 2023'),
(4, 58000.00, '2023-01-01', '31 de diciembre de 2023'),
(5, 70000.00, '2023-01-01', '31 de diciembre de 2023');

Esto debería darnos dos tablas que pueden ayudarnos a demostrar el concepto de uniones/fusiones de tablas en SQL.

Fusión de tabla SQL/unión de tabla

Exploremos los distintos tipos de combinaciones de tablas que podemos realizar. Cubriremos los conceptos básicos a medida que avancemos hacia las partes más avanzadas.

unir internamente

El primer y más común tipo de combinación de tablas en SQL es INNER JOIN. INNER JOIN nos permite combinar filas de dos tablas en función de condiciones específicas. Este tipo luego devuelve solo filas que coinciden entre las tablas.

Tomemos como ejemplo las tablas «Empleado» y «Salario» creadas anteriormente. Para realizar INNER JOIN en SQL, utilizamos la cláusula INNER JOIN de la siguiente manera:

elegir

e.empleado_id,

e. nombre,

e.apellido,

e. Departamento,

s.Salario

de

empleado e

Salario de unión interna existir

e.employee_id = s.employee_id;

En la consulta de ejemplo dada, utilizamos INNER JOIN para fusionar las tablas «empleados» y «salarios» en el campo «employee_id» que existe en ambas tablas. El conjunto de resultados contiene solo filas coincidentes de ambas tablas.

El resultado de muestra es el siguiente:

izquierda combinación externa

También tenemos una UNIÓN EXTERIOR IZQUIERDA que combina todas las filas de la tabla izquierda con filas coincidentes de la tabla derecha. Si no hay ninguna coincidencia en la tabla de la derecha, el cable utiliza un valor NULL.

elegir

e.empleado_id,

e. nombre,

e.apellido,

e. Departamento,

s.Salario

de

empleado e

SALARIO IZQUIERDO UNIRSE

existir

e.employee_id = s.employee_id;

En este ejemplo, realizamos una UNIÓN EXTERNA IZQUIERDA para fusionar las tablas «empleados» y «salarios». Contiene todas las filas de la tabla «empleados» y agrega filas coincidentes de la tabla «salarios». Sin embargo, para las filas que no coinciden, la columna «salario» contiene un valor NULL.

unión SQL

Otra forma de unir tablas en SQL es utilizar el operador UNION. Este operador nos permite combinar los resultados de dos o más declaraciones de selección en un conjunto de resultados.

Los campos de cada instrucción SELECT deben ser del mismo tipo de datos para que funcione la combinación.

Los ejemplos son los siguientes:

SELECCIONE ID de empleado, nombre, apellido, departamento, NULL AS salario

del empleado e

Alianza

SELECCIONE ID de empleado, NULL AS nombre, NULL AS apellido, NULL AS departamento, salario

de los salarios s;

En este ejemplo, UNION fusiona las tablas «Empleado» y «Salario». Luego creamos columnas NULL en cada instrucción SELECT para garantizar que ambas tablas tengan un número similar de columnas.

Las UNION son técnicamente comunes, pero son muy útiles, especialmente cuando necesitas fusionar tablas con diferentes estructuras.

en conclusión

En este tutorial, exploramos los conceptos básicos de unir/fusionar dos tablas en un único conjunto de resultados. Tenga en cuenta que hay muchas más conexiones avanzadas que se analizan en este artículo.

LEER  ¿Qué es Apache Cassandra? Introducción a Kassandra

Publicaciones relacionadas

Deja una respuesta

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

Botón volver arriba