Operador EXCEPT de PostgreSQL
Resumen: en este tutorial, aprenderá a utilizar el operador EXCEPT
de PostgreSQL para devolver las filas de la primera consulta que no aparecen en la salida de la segunda consulta.
Introducción al operador EXCEPT de PostgreSQL
Al igual que los operadores UNION e INTERSECT, el operador EXCEPT
devuelve filas comparando los conjuntos de resultados de dos o más consultas.
El operador EXCEPT
devuelve filas distintas de la primera consulta (izquierda) que no están en la salida de la segunda consulta (derecha).
Lo siguiente ilustra la sintaxis del operador EXCEPT
.
Code language: SQL (Structured Query Language) (sql)
Las consultas que implican en el EXCEPT
necesitan seguir estas reglas:
- El número de columnas y sus órdenes deben ser los mismos en las dos consultas.
- Los tipos de datos de las respectivas columnas deben ser compatibles.
El siguiente diagrama de Venn ilustra el operador EXCEPT
:
Ejemplos del operador EXCEPT de PostgreSQL
Utilizaremos las tablas top_rated_films
y most_popular_films
creadas en el tutorial UNION
:
La tabla top_rated_films
:
La tabla most_popular_films
:
La siguiente sentencia utiliza el operador EXCEPT
para encontrar las películas más valoradas que no son populares:
Code language: SQL (Structured Query Language) (sql)
La siguiente sentencia utiliza la cláusula ORDER BY
en la consulta para ordenar los conjuntos de resultados devueltos por el operador EXCEPT
:
Code language: SQL (Structured Query Language) (sql)
Nota que hemos colocado la cláusula ORDER BY al final de la sentencia para ordenar las películas por título.
Resumen
- Utiliza el operador
EXCEPT
de PostgreSQL para obtener las filas de la primera consulta que no aparecen en el conjunto de resultados de la segunda.
- ¿Ha sido útil este tutorial?
- SíNo