IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage SQL Discussion :

IS IN versus WHERE ... = ...


Sujet :

Langage SQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé

    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    1 163
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 163
    Par défaut IS IN versus WHERE ... = ...
    Bonjour à tous,

    je me pose actuellement une question de performance.
    Pour poser le contexte : je travaille sous Access (j'écrit mes requêtes en SQL dans mon code Visual Basic). J'ai une liste dans laquelle mon utilisateur sélectionne différents codes produits.
    Je voudrais ensuite écrire mes requêtes de sortent qu'elles ne travaillent que sur les codes produits sélectionnés par l'utilisateur.

    A priori deux options se présentent à moi :
    copier dans une table les éléments sélectionnés et utiliser un IS IN

    enchaîner les
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    [code produit]="machin" OR [code produit]="bidule"
    dans mes requêtes/

    Je pense que la méthode la plus efficace est la première mais j'aimerais votre avis !

    Merci d'avance.

  2. #2
    Membre expérimenté
    Inscrit en
    Mars 2004
    Messages
    425
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 425
    Par défaut
    Moi également je pencherai pour la première méthode. Je trouve qu'elle est plus performante et plus lisible.

  3. #3
    Membre éprouvé

    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    1 163
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 163
    Par défaut
    La lisibilité n'est pas importante, la requête sera générée par mon code Visual Basic, seule la performance m'importe

    Donc tu penses comme moi

    Merci pour ta réponse, j'attend encore un ou deux avis juste pour voir

    P.S. Je vais pas non plus écrire tout et n'importe quoi ss prétexte que c'est mon code VBA qui le fait :p

  4. #4
    Membre éprouvé

    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    1 163
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 163
    Par défaut
    En fait la solution la plus élégante et la plus simple est d'utiliser la clause WHERE de la façon suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    WHERE mon_champ IN ( "valeur séléctionnéé 1", "valeur séléctionnée, ....., "dernière valeur sélectionnée")
    Simple, à priori efficace et lisible

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Débat] MERISE versus UML ? Avenir de MERISE ?
    Par Matthieu Brucher dans le forum Méthodes
    Réponses: 51
    Dernier message: 15/02/2022, 17h32
  2. C# versus Java
    Par laffreuxthomas dans le forum C#
    Réponses: 368
    Dernier message: 30/03/2019, 22h59
  3. Case versus Where
    Par Yves Archambault dans le forum Requêtes
    Réponses: 7
    Dernier message: 03/04/2012, 08h00
  4. join outer/inner versus where
    Par siimpatiico dans le forum Débuter
    Réponses: 4
    Dernier message: 10/02/2010, 17h53
  5. Que choisir : PHP versus Java ?
    Par Sniper37 dans le forum Général Conception Web
    Réponses: 164
    Dernier message: 28/04/2009, 16h50

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo