Opérateur PostgreSQL EXCEPT

Résumé : dans ce tutoriel, vous apprendrez à utiliser l’opérateur PostgreSQL EXCEPT pour retourner les lignes de la première requête qui n’apparaissent pas dans la sortie de la seconde requête.

Introduction à l’opérateur EXCEPT de PostgreSQL

Comme les opérateurs UNION et INTERSECT, l’opérateur EXCEPT renvoie des lignes en comparant les ensembles de résultats de deux ou plusieurs requêtes.

L’opérateur EXCEPT renvoie des rangées distinctes de la première requête (gauche) qui ne sont pas dans la sortie de la deuxième requête (droite).

La figure suivante illustre la syntaxe de l’opérateur EXCEPT.

Code language: SQL (Structured Query Language) (sql)

Les requêtes qui impliquent dans le EXCEPT doivent suivre ces règles:

  • Le nombre de colonnes et leurs ordres doivent être les mêmes dans les deux requêtes.
  • Les types de données des colonnes respectives doivent être compatibles.

Le diagramme de Venn suivant illustre l’opérateur EXCEPT :

Exemples de l’opérateur EXCEPT de PostgreSQL

Nous allons utiliser les tables top_rated_films et most_popular_films créées dans le UNION tutoriel :

La table top_rated_films:

La table most_popular_films :

L’instruction suivante utilise l’opérateur EXCEPT pour trouver les films les mieux notés qui ne sont pas populaires:

Code language: SQL (Structured Query Language) (sql)

L’instruction suivante utilise la clause ORDER BY dans la requête pour trier les ensembles de résultats renvoyés par l’opérateur EXCEPT:

Code language: SQL (Structured Query Language) (sql)

Notez que nous avons placé la clause ORDER BY à la fin de l’instruction pour trier les films par titre.

Résumé

  • Utiliser l’opérateur EXCEPT de PostgreSQL pour obtenir les lignes de la première requête qui n’apparaissent pas dans l’ensemble de résultats de la seconde requête.
  • Ce tutoriel a-t-il été utile ?
  • OuiNon

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.