DevPath · Aprende a programar ESPTEN

Conjuntos y funciones

Operaciones de conjuntos

Trabajar con conjuntos de filas

Hasta ahora cada consulta producía un resultado. Los operadores de conjuntos combinan los resultados de dos SELECT como si fueran conjuntos matemáticos. Se escriben entre las dos consultas:

SELECT nombre FROM productos
UNION
SELECT nombre FROM liquidacion;

Reglas comunes a todos

Para combinar dos consultas, ambas deben tener:

Los nombres de las columnas del resultado los aporta la primera consulta.

UNION vs UNION ALL

SELECT categoria FROM productos
UNION ALL
SELECT categoria FROM liquidacion;

INTERSECT y EXCEPT

SELECT nombre FROM productos
INTERSECT
SELECT nombre FROM liquidacion;   -- productos que también se liquidan

Como UNION, los operadores INTERSECT y EXCEPT también eliminan duplicados por defecto.

ORDER BY en combinaciones

Un ORDER BY se aplica al resultado completo de la combinación, por lo que va al final, después de la última consulta (no dentro de cada SELECT):

SELECT nombre FROM productos
UNION
SELECT nombre FROM liquidacion
ORDER BY nombre;        -- ordena TODO el resultado combinado

Ejemplos

UNION elimina duplicados; UNION ALL los conserva

SELECT categoria FROM productos
UNION
SELECT categoria FROM liquidacion
ORDER BY categoria;
Pon esto en práctica

DevPath es un curso práctico: aquí lees la teoría; en la app la pones en práctica con ejercicios que se ejecutan de verdad, sin conexión.

Empezar gratis en la app →
Trabajar con NULL →