Bonjour,

J'ai lu l'article suivant :

http://sheikyerbouti.developpez.com/...timisation.pdf

A la page 9, l'article nous dit que le mieux en terme de performance est d'utiliser une jointure externe, NOT EXISTS et enfin NOT IN en dernier.

Dans le forum, j'ai vu un post ou vous dites d'utiliser la jointure externe en dernier cas et de préférer NOT EXISTS.

Pouvez vous m'expliquer les différences?

De plus l'exemple donné dans l'article toujours dans la même page n'est pas très clair pour moi :

-- avec not in (lent)--
Select a.nom, a .prenom
From Salarie a
Where a.nom not in (select nom from Fonction where job =
‘INFORMATICEN’ );

-- avec jointure externe (plus rapide)--
Select a.nom, a.prenom
From Salarie a, Fonction b
Where a.nom = b.nom(+)
And b.nom is NULL
And b.job = ‘INFORMATICIEN’;

pour moi c'est 2 requête ne donnent pas le même résultat

Merci