Usando UNION para combinar resultados de consultas SQL
Clase 17 de 29 • Curso de PostgreSQL
Resumen
La sentencia UNION en SQL facilita la combinación de resultados procedentes de múltiples consultas, generando una tabla fusionada con registros únicos. Comparado con JOIN, UNION permite integrar datos de distintas tablas conservando estructuras similares, aportando simplicidad y claridad en el resultado final.
¿Qué hace la sentencia UNION en SQL?
El operador UNION combina filas resultantes de dos o más consultas independientes en una sola tabla. Esto es especialmente útil cuando se requiere visualizar información unificada desde distintos orígenes cuyas estructuras sean compatibles.
Para utilizar UNION es necesario:
- Seleccionar columnas equivalentes en cada tabla.
- Garantizar que los tipos de datos sean compatibles.
¿Cómo preparar consultas SQL para utilizar UNION?
Para aplicar UNION correctamente, sigue estos pasos:
- Selecciona las columnas que quieres mostrar en cada consulta, asegurando que tengan equivalencia.
- Añade una columna adicional para identificar el origen del dato (opcional pero recomendado).
- Utiliza etiquetas claras como 'cliente' o 'empleado' para distinguir datos diferentes.
- Verifica sintaxis, incluidos signos de puntuación como comas y comillas.
Ejemplo práctico:
SELECT FirstName, LastName, 'cliente' AS Tipo FROM Customer
UNION
SELECT FirstName, LastName, 'empleado' AS Tipo FROM Staff;
¿De qué forma ordenar resultados combinados con UNION?
Luego de combinar tus datos con UNION, emplea cláusulas de ordenamiento para mejorar la interpretación visual:
SELECT FirstName, LastName, 'cliente' AS Tipo FROM Customer
UNION
SELECT FirstName, LastName, 'empleado' AS Tipo FROM Staff
ORDER BY LastName ASC;
- Puedes ordenar por apellido, nombre u otro campo según requieras.
- También admite ordenamientos para diferenciar entre tipos de datos, mostrando claramente tus nuevos conjuntos combinados.
Muchos profesionales eligen la sencillez de UNION por sobre JOIN, según sus necesidades puntuales. Comenta aquí abajo si has usado UNION y qué resultados obtuviste.