Optimisation SQL

MINUS, NOT EXIST, NOT IN ...

a marqué ce sujet comme résolu.

Bonjour à tous,

J’ai un petit débat avec des collègues sur l’utilisation optimale du MINUS, NOT EXIST ou encore du NOT IN dans une requête. J’aimerai avoir votre avis sur la question quand les utiliser. Pour ma part, je comprends la chose ainsi :

MINUS : On l’utilise pour comparer deux tables

NOT EXIST : On l’utilise pour déduire d’une table une liste valeurs d’une requête utilisant des valeurs de la table1 ? (J’avoue que j’ai découvert le NOT EXIST très récemment et j’ai plus tendance à utiliser le MINUS)

NOT IN : On l’utilise pour déduire d’une table une liste de valeur. Mais à utiliser pour un certain un nombre de valeur.

Je vous remercie d’avance

Garde en tête qu’une requête SQL décrit un résultat.

MINUS se traduit par "sauf". NOT EXISTS est l’inverse de EXISTS. EXISTS se traduit par "existe". NOT IN est l’inverse de IN. IN se traduit par "dans".

+0 -0

Ça dépend de la base de donnée que tu utilises. Par exemple avec pg, c’est pas top d’utiliser EXISTS. Si tu fais SELECT f FROM t WHERE EXISTS (ta subquery), la subquery sera exécutée pour chaque ligne de la table t.

+0 -0
Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte