La comparación sql union versus union all aparece al apilar resultados de dos consultas compatibles en columnas y tipos.
UNION
Ejecuta ambas consultas y devuelve filas únicas, eliminando duplicados (con coste de ordenación o hash).
SELECT ciudad FROM clientes
UNION
SELECT ciudad FROM proveedores;
UNION ALL
Concatena resultados sin deduplicar. Suele ser más rápido cuando sabes que no hay solapamiento o cuando los duplicados son deseables.
SELECT producto_id, 'venta' AS origen FROM ventas_2024
UNION ALL
SELECT producto_id, 'venta' AS origen FROM ventas_2025;
Cuándo usar cada una
UNION: listados únicos (por ejemplo catálogo combinado).UNION ALL: métricas apiladas por periodo o logs donde cada fila cuenta.