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 :

Condition dans une requete (pas en SQL)


Sujet :

Requêtes et SQL.

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 44
    Points : 19
    Points
    19
    Par défaut Condition dans une requete (pas en SQL)
    Bonjour,
    J'ai bientrouvé une reponse à mon pb sur le site mais en SQL et je ne le maitrise absolument pas.

    Dans une requete, je voudrais rajouter un champ de calcul du montant en € des consommations d'eau mais celui ci inclurait une condition sur un autre champ

    Est ce que quelqu'un pourrait me donner la formule equivalente à celle que l'on utiliserait dans Excell dans le cas suivant :

    =SI(F2="FROIDE";L2*3.34;L2*6.23)

    Plus concretement :
    La colonne F2 represente dans une table un champs "TYPE EAU" dans lequel la donnée est soit "FROIDE" ou "CHAUDE"

    La colonne L2 represente dans une requete un champs "CONSO EAU" qui est la difference entre 2 index de relevé

    3.34 et 6.23 sont respectivement le prix de l'eau froide et chaude

    La requete actuelle donne le resultat suivant :

    CPTEUR TYPE EAU INDEX1 INDEX2 CONSO MONT ?
    1 FROIDE 15 20 5
    2 CHAUDE 22 30 8
    3 FROIDE 5 10 5
    4 FROIDE 10 5 5
    5 CHAUDE 6 10 4

    J'espere avoir ete assez claire dans ma demande dans la mesure ou en previsisulation mon tableau n'est pas tres comprehensible - désolé
    Je vous en remercie

  2. #2
    Expert éminent

    Avatar de Maxence HUBICHE
    Homme Profil pro
    Développeur SQLServer/Access
    Inscrit en
    Juin 2002
    Messages
    3 842
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Développeur SQLServer/Access

    Informations forums :
    Inscription : Juin 2002
    Messages : 3 842
    Points : 9 197
    Points
    9 197
    Par défaut
    en SQL :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    iif([TYPE EAU]="FROIDE" [CONSO EAU]*3.34, [CONSO EAU]*6.23)
    dans le générateur de requête, remplaces les , par des ; (il mettra tout seul VraiFaux à la place de iif )

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 44
    Points : 19
    Points
    19
    Par défaut
    Super ... je te remercie

    Quand je lance la REQ, j'ai "entrez une valeur de parametre : TYPE EAU". C'est possible de supprimez ce message ?

    Mes questions sont certainement tres basique ... mais je decouvre Access !!!

  4. #4
    Expert éminent

    Avatar de Maxence HUBICHE
    Homme Profil pro
    Développeur SQLServer/Access
    Inscrit en
    Juin 2002
    Messages
    3 842
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Développeur SQLServer/Access

    Informations forums :
    Inscription : Juin 2002
    Messages : 3 842
    Points : 9 197
    Points
    9 197
    Par défaut
    ben oui, c'est possible : il suffit d'écrire correctement le nom du champ.
    Moi, je n'ai fait que recopier d'après ce que tu nous disais.

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 44
    Points : 19
    Points
    19
    Par défaut
    En 3 messages ... la réponse à 10 heures de recherche à la con !!...

    Merci
    J'en ai profité pour regarder ton site ... c'est pas 10h ... c'est 10 ans qu'il me faudra pour comprendre ton language !!!''

  6. #6
    Expert éminent

    Avatar de Maxence HUBICHE
    Homme Profil pro
    Développeur SQLServer/Access
    Inscrit en
    Juin 2002
    Messages
    3 842
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Développeur SQLServer/Access

    Informations forums :
    Inscription : Juin 2002
    Messages : 3 842
    Points : 9 197
    Points
    9 197
    Par défaut
    Presque !!
    Moi, c'est 13 ans d'expérience que j'ai

  7. #7
    Membre du Club
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Août 2005
    Messages
    79
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Août 2005
    Messages : 79
    Points : 46
    Points
    46
    Par défaut
    Luc, je suis à ton niveau : voila mon problème

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MONTANT NET : iif([TYPE_ORDRE]="ACHAT" [QUANTITE]*[COUR_EXECUTION]+[COMMISSION_HT]+[TVA] ; [QUANTITE]*[COUR_EXECUTION]-[COMMISSION_HT]-[TVA])
    L'expression n'est pas correcte !
    Je me forme sur access en essayant de renseigner mon portefeuille PEA. Excel ca va mais là je suis perdu à cause du code ...

    Merci pour votre aide !

  8. #8
    Expert éminent
    Avatar de cafeine
    Inscrit en
    Juin 2002
    Messages
    3 904
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 3 904
    Points : 6 781
    Points
    6 781
    Par défaut
    Hello,

    A premiere vue, il manquait un ";" dans l'expression ...
    Iif( <expression de test> ; <valeur si vrai> ; <valeur si faux>)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MONTANT NET : iif([TYPE_ORDRE]="ACHAT"; [QUANTITE]*[COUR_EXECUTION]+[COMMISSION_HT]+[TVA] ; [QUANTITE]*[COUR_EXECUTION]-[COMMISSION_HT]-[TVA])
    Ne mettez pas "Problème" dans vos titres, par définition derrière toute question se cache un problème
    12 tutoriels Access



  9. #9
    Membre du Club
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Août 2005
    Messages
    79
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Août 2005
    Messages : 79
    Points : 46
    Points
    46
    Par défaut Ca Ne Fonctionne Pas !
    Lorsque je colle ta formule avec l'ajout du ; ca ne fonctionne toujours pas. Je remarque que Access converti le iif en VraiFaux !

    Je suis dans un requête selection, et je colle la formule dans le générateur d'expression.

    jdvroum

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

Discussions similaires

  1. condition dans une requete sql
    Par khayate dans le forum Langage SQL
    Réponses: 3
    Dernier message: 27/06/2007, 12h26
  2. Double condition dans une requete SQL
    Par quatar dans le forum Requêtes et SQL.
    Réponses: 5
    Dernier message: 29/05/2007, 16h22
  3. conditions dans une requete sql
    Par beve dans le forum Langage SQL
    Réponses: 2
    Dernier message: 04/05/2007, 14h29
  4. [débutant] problème de condition dans une requete
    Par banker dans le forum Access
    Réponses: 5
    Dernier message: 22/03/2006, 13h52
  5. Introduire une condition dans une requete
    Par DeezerD dans le forum Langage SQL
    Réponses: 9
    Dernier message: 12/10/2004, 18h13

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