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 :

Plusieurs valeurs possibles


Sujet :

Langage SQL

  1. #1
    Membre à l'essai
    Inscrit en
    Avril 2005
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 22
    Points : 13
    Points
    13
    Par défaut Plusieurs valeurs possibles
    Bonjour,

    J'ai un cas pour lequel je bute :
    j'ai une table avec différentes valeurs, et je souhaite que la requete me retourne uniquement les id qui ont toutes les valeurs :
    Exemple :
    A : 1
    A : 2
    B : 1
    B : 3

    Je dans ma requete je passe 1 en parametre, celle ci doit me retourner A et B
    si je passe 1 et 2 je ne dois récupérer que A. Etant donné que B n'a pas la valeur 2.

    Je suis sur sql server.

    Je tente avec des AND mais il me retourne A et B car le systeme doit considérer que des qu'une valeur est trouvée, il renvoit l'id.

    Merci

  2. #2
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 080
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 080
    Points : 30 804
    Points
    30 804
    Par défaut
    Bonjour,

    Pour obtenir le bon résultat, il faut s'assurer qu'il y a bien autant d'éléments retournés que de valeurs recherchées.

    En SQL ça peut s'écrire ainsi :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    select  lettre
    from    ma_table
    where   chiffre in ('1', '2')       --  Liste des valeurs cherchées
    group by lettre
    having  count(distinct chiffre) = 2 --  Nombre de valeurs cherchées
    ;
    S'il y a une contrainte d'unicité sur le couple (lettre, chiffre), l'ustilisation de distinct n'est pas nécessaire.
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

  3. #3
    Membre à l'essai
    Inscrit en
    Avril 2005
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 22
    Points : 13
    Points
    13
    Par défaut
    Bonjour et merci pour le retour.
    Ca marche bien.

    Quelque modifs mais ca m'a donné la solution :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    		select ref , count (ref) as nb
    		from CDE_LIGNE
    		where ean = %1
    		group by ref
    		having nb = %2
    les pourc étant mes paramètres.

    Top !

Discussions similaires

  1. Réponses: 7
    Dernier message: 24/11/2014, 15h58
  2. fonction instr à choix multiples, plusieurs valeurs recherchées possibles.
    Par Dennis Nedry dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 25/08/2011, 20h05
  3. [PHP 5.2] Plusieurs valeurs dans l'attribut value est ce possible?
    Par zemzoum89 dans le forum Langage
    Réponses: 7
    Dernier message: 25/05/2010, 00h07
  4. renvoyer TRUE avec plusieurs valeurs possibles
    Par diablotine dans le forum Langage
    Réponses: 4
    Dernier message: 20/08/2008, 08h40
  5. Plusieurs valeurs possibles
    Par batama dans le forum Langage SQL
    Réponses: 1
    Dernier message: 09/05/2006, 12h27

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