Sous-requête d'existence EXISTS

Introduction

Cette sous-requête permet de vérifier que la sous-requête contient au moins un tuple.

SELECT <projections>
FROM <relations>
WHERE EXISTS 
 (<requête imbriquée>)

La requête imbriquée faisant référence à des propriétés (éventuellement non projetées) de la requête principale.

SELECT Chercheur.Nom
FROM Chercheur
WHERE EXISTS
 (SELECT * 
FROM Universite 
WHERE Universite.Nom=Chercheur.Universite)

Projection dans la sous-requête

Puisque la sous-requête n'est destinée qu'à valider l'existence d'un tuple, il est inutile de procéder à une projection particulière pour cette sous-requête. On utilise donc en général la clause SELECT * pour une sous-requête avec une clause EXISTS.

NOT EXISTS

On peut tester la non présence de tuple dans la sous-requête en utilisant la clause NOT EXISTS à la place de la clause EXISTS.

AccueilCours > LMD (imbrication de requêtes) > Sous-requête d'existence EXISTS< PrécédentSuivant >