Repaso
English
Bases de datos y SQLIntermedioDB-18

¿UNION frente a UNION ALL?

Opciones

  1. Son idénticos en el resultado y en la velocidad
  2. UNION elimina duplicados; UNION ALL conserva todas las filas y es más rápido (Opción correcta)
  3. UNION ALL elimina duplicados; UNION conserva todas las filas
  4. UNION solo funciona cuando ambas consultas usan la misma tabla

Respuesta

UNION elimina duplicados (coste extra de ordenar o hacer hash); UNION ALL conserva todas las filas y es más rápido

Por qué

Ambos apilan los resultados de dos consultas.

UNION además elimina las filas duplicadas, lo que requiere trabajo extra (ordenar o hacer hash).

UNION ALL lo conserva todo y es más rápido. Úsalo cuando los duplicados sean imposibles o aceptables.

Recuerda

Prefiere UNION ALL salvo que necesites eliminar duplicados.

Términos clave

Practica esta pregunta en Repaso