# SQL UNION – cómo unir conjuntos de datos con éxito

SQL UNION **unifica los conjuntos de datos de dos o más tablas en una tabla final** sin duplicados. Su ventaja principal es que permite combinar conjuntos de datos relacionados entre sí en una tabla para tener una mejor visión de conjunto y realizar consultas de datos más eficaces y significativas.

## ¿Qué es UNION de SQL?

El mantenimiento de [bases de datos](https://www.ionos.es/digitalguide/hosting/cuestiones-tecnicas/bases-de-datos/) complejas siempre es un reto, ya se trate con conjuntos de datos de clientes, precios o productos, o con datos financieros o de proyectos. Los administradores deben **fusionar de manera eficiente los datos vinculados existentes en importantes tablas de datos resultantes**. Para ello, suele utilizarse el [operador de SQL](https://www.ionos.es/digitalguide/servidores/configuracion/sql-operators/) UNION. Al utilizar `UNION` para consultas, comparaciones, análisis y modificaciones de datos, puedes unir los conjuntos de datos que elijas en una o más tablas y eliminar los posibles duplicados.

Y si lo combinas con otras funciones y [comandos de SQL](https://www.ionos.es/digitalguide/servidores/configuracion/comandos-sql/) como `ORDER BY`, `GROUP BY`, `WHERE` o `HAVING` puedes crear **estructuras de datos relevantes según determinados criterios** para tus análisis, informes o actualizaciones. Con las funciones de agregación como [SQL AVG](https://www.ionos.es/digitalguide/servidores/configuracion/sql-avg/) o [SQL SUM](https://www.ionos.es/digitalguide/servidores/configuracion/sql-sum/) puedes fusionar tablas y al mismo tiempo calcular y ordenar conjuntos de datos según quieras.

Consejo Para dar los primeros pasos con [SQL](https://www.ionos.es/digitalguide/servidores/know-how/que-es-sql/) necesitas ciertos conocimientos básicos. Nuestra [guía de SQL con ejemplos](https://www.ionos.es/digitalguide/servidores/configuracion/sql-introduccion-con-ejemplos/) te ofrece las funciones más importantes y los elementos básicos para trabajar con este lenguaje.

## Explicación de la sintaxis de SQL UNION

La sintaxis de `UNION` es la siguiente:

```sql
SELECT  ColumnaA, ColumnaB, … o *  FROM  TablaA 
UNION 
SELECT ColumnaA, ColumnaB, … o *  FROM  TablaB
```

Utiliza estos parámetros:

- `SELECT`: Con la palabra clave [SQL SELECT](https://www.ionos.es/digitalguide/servidores/configuracion/sql-select/) eliges las columnas de las dos tablas que quieres fusionar. Con un asterisco `*` puedes seleccionar todos los conjuntos de datos. El número de columnas elegidas debe ser idéntico en cada elemento SELECT de una sentencia UNION e ir en el mismo orden.
- `UNION`: Fusiona los datos elegidos de dos tablas en una tabla meta.

## Para qué sirve UNION

Si deseas fusionar fácilmente conjuntos de datos relacionados en SQL, tales como como archivos de clientes, datos financieros o información de productos o proyectos, UNION es operador SQL a usar. Se usa en todos los sectores con estas finalidades:

- Crear archivos y carpetas digitales de datos de clientes, proyectos, pacientes o pedidos
- Crear informes de venta o comparar datos de distintos departamentos
- Analizar el comportamiento de compra para determinar posibles clientes
- Analizar y comparar datos financieros y de transacciones
- Eliminar los duplicados de informes o conjuntos de datos fusionados
- Evaluar cantidades de productos, de entrega o niveles de existencias
- Agregar datos de pedidos y ventas para identificar tendencias y realizar análisis de marketing

Consejo Si quieres una memoria de datos segura, un rendimiento escalable y opciones de hosting y servidores individualizadas, decántate por el [hosting SQL server](https://www.ionos.com/cloud/sql-server-hosting/ "Hosting SQL Server de IONOS") de IONOS. Puedes elegir entre servidores en la nube, VPS, servidores dedicados y alojamiento Linux y confiar en la seguridad de datos según estándares alemanes.

## Ejemplos prácticos de SQL UNION

Con estos ejemplos prácticos podrás ver claramente cómo se fusionan datos eficientemente con SQL UNION.

### Fusionar dos conjuntos de datos en una tabla

Supongamos que quieres unir los datos de las tablas “Suscriptores” y “Clientes” en una tabla meta sin duplicados mediante columnas como “Nombre”, “Dirección” e “ID de cliente”. Deberías proceder de la siguiente manera:

```sql
SELECT  nombre, dirección, IDcliente 
FROM  suscriptores 
UNION 
SELECT  nombre, dirección, IDcliente 
FROM  clientes
```

### Fusionar datos de trabajadores de distintos departamentos

Quieres combinar los datos de los trabajadores de las tablas “Marketing” y “Distribución” a partir de columnas como “Nombres” y “Ciudad”. Se haría así:

```sql
SELECT  nombre, ciudad 
FROM  Marketing 
UNION 
SELECT  nombre, ciudad 
FROM  Distribución
```

### Fusionar dos conjuntos de datos con UNION ALL

En este tercer ejemplo verás el funcionamiento de `UNION ALL`. A diferencia del operador SQL `UNION`, `UNION ALL` te ofrece **una tabla meta con todos los datos deseados**. Los duplicados no se eliminan. Tomamos como ejemplo una tabla “Clientes” y una tabla “Proveedores” que queremos fusionar siempre que los clientes y los proveedores provengan de “Portland”. El procedimiento es:

```sql
SELECT  nombre, ciudad 
FROM  clientes 
WHERE  ciudad  =  ´Portland´ 
UNION ALL 
SELECT  nombre, ciudad 
FROM  proveedores 
WHERE  ciudad  =  ´Portland´ 
GROUP BY  ciudad;
```

## Alternativas a SQL UNION

Para fusionar datos sin duplicados, además, o en lugar de `UNION`, dispones de otras opciones. Estas son las más importantes:

- `JOIN`: [SQL JOIN](https://www.ionos.es/digitalguide/servidores/configuracion/sql-joins/) te permite fusionar, consultar y vincular datos de distintas tablas. Cuentas con los comandos `INNER JOIN`, `LEFT JOIN`, `RIGHT JOIN` así como `FULL JOIN` o `CROSS JOIN`. Con la secuencia `JOIN` puedes unir datos de dos tablas con mayor precisión o flexibilidad que con `UNION` ya que determinas las condiciones con la cláusula `ON`.
- `GROUP BY`: Con [SQL GROUP BY](https://www.ionos.es/digitalguide/servidores/configuracion/sql-group-by/) puedes fusionar los conjuntos de datos que quieras de columnas y tablas con valores idénticos en una table de destino.
- `ORDER BY`: [SQL ORDER BY](https://www.ionos.es/digitalguide/servidores/configuracion/sql-order-by/) te permite elegir el orden en el que organizas una tabla meta.
- `SELECT DISTINCT`: [SQL SELECT DISTINCT](https://www.ionos.es/digitalguide/servidores/configuracion/sql-select-distinct/) te permite, al igual que UNION, mostrar solo los resultados significativos de la consulta sin duplicados.
- `UNION ALL`: El operador `UNION ALL` funciona de manera parecida a `UNION`, pero combina todos los datos de la tabla que quieres, incluyendo los duplicados.


This is a markdown version of: [https://www.ionos.es/digitalguide/servidores/configuracion/sql-union/](https://www.ionos.es/digitalguide/servidores/configuracion/sql-union/) for AI/LLM consumption.