APSQL

Requête et sous requête

Identifier les artistes qui ne sont pas réalisateur.

Le code des artistes qui sont des réalisateurs peut être obtenu en parcourant la table des Films, soit en SQL avec la requête suivante:

SELECT DISTINCT realisateur FROM films;

Comme cette requête permet d'identifier le numéro des artistes qui sont des réalisateurs, seuls ceux dont le numéro n'est pas dans cette liste nous intéressent soit:

SELECT *
FROM Artistes
WHERE numero NOT IN (SELECT DISTINCT realisateur FROM films);			
			

Identifier les artistes qui sont à la fois réalisateur et acteur

Si la liste des réalisateurs est fournie par la requête suivante:

SELECT DISTINCT realisateur FROM films;

La liste des acteurs est quand à elle fournie par la requête :

SELECT DISTINCT artiste FROM acteurs;

Les artistes qui sont à la fois réalisateur et acteur ont leur numéro présent dans les 2 listes. Ce qui est réalisé avec la requête suivante:

SELECT *
FROM Artistes
WHERE numero IN (SELECT DISTINCT realisateur FROM films)
  AND numero IN(SELECT DISTINCT artiste FROM acteurs);