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

Requêtes et SQL. Discussion :

Sélection conditionnelle de plusieurs champs


Sujet :

Requêtes et SQL.

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2011
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2011
    Messages : 29
    Points : 23
    Points
    23
    Par défaut Sélection conditionnelle de plusieurs champs
    Bonjour à tous

    Déjà, je suis sous Access 2010.

    J'aimerai sélectionner différent champs d'une table en fonction de la valeur d'un autre.

    Si champ1 = 0, SELECT champ2, champ3, champ4 sinon SELECT champ5, champ6, champ7.


    Est-ce possible ?
    Je me prend la tête dessus depuis un moment, mais je sens que c'est un truc con

    Merci d'avance de votre aide.


    Edit : Idéalement, il faudrait un truc comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    SELECT P.IdSous_espèce,
    IIF(
    ISNULL(P.IdSous_espèce),
    (P.IdEspèce,E.NomEspèce),
    (P.IdSous_espèce,S.NomSous_espèce))
     
    FROM (Plante P
    INNER JOIN Espèce E ON P.IdEspèce = E.IdEspèce)
    LEFT JOIN Sous_espèce S ON P.IdSous_espèce = S.IdSous_espèce
     
    WHERE P.IdPlante = xxx
    Le soucis étant que le IIF ne peut retourner qu'une expression/qu'un champ.

  2. #2
    Responsable Arduino et Systèmes Embarqués


    Avatar de f-leb
    Homme Profil pro
    Enseignant
    Inscrit en
    Janvier 2009
    Messages
    12 862
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 12 862
    Points : 58 414
    Points
    58 414
    Billets dans le blog
    44
    Par défaut
    bonjour,

    Citation Envoyé par Tevsox Voir le message
    Si champ1 = 0, SELECT champ2, champ3, champ4 sinon SELECT champ5, champ6, champ7.
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    SELECT champ2, champ3, champ4
    FROM LaTable
    WHERE champ1=0
     
    UNION
     
    SELECT champ5, champ6, champ7
    FROM LaTable
    WHERE champ1<>0

    comme ça ?

  3. #3
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2011
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2011
    Messages : 29
    Points : 23
    Points
    23
    Par défaut
    Bon bin voilà, encore une fois j'ai bien fais de venir
    Je ne m'étais encore jamais servi de "UNION"...

    Merci f-leb

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

Discussions similaires

  1. Sélection conditionnelle d'un champ
    Par DexterV dans le forum Langage SQL
    Réponses: 2
    Dernier message: 27/04/2012, 21h40
  2. [AC-2003] Sélections aléatoires imbriquées dans plusieurs champs
    Par keketteboy dans le forum Requêtes et SQL.
    Réponses: 5
    Dernier message: 29/10/2009, 16h06
  3. requete avec plusieur sum conditionnel du meme champs
    Par longuard dans le forum Requêtes
    Réponses: 1
    Dernier message: 01/10/2009, 10h53
  4. Réponses: 9
    Dernier message: 17/10/2005, 18h13
  5. sélection d'un max parmi plusieurs champs
    Par invitésuprise dans le forum Langage SQL
    Réponses: 2
    Dernier message: 12/08/2005, 14h49

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