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 :

aide sur requete


Sujet :

Langage SQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Février 2008
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 10
    Par défaut aide sur requete
    Bonjour
    Je suis de niveau très moyen en SQL, j'ai donc besoin de votre aide sur une requete. Merci d'avance
    J'ai une table constitué de 12 champs
    GBAN01 ,GBAN02, ...., GBAN11, GBAN12

    J'ai besoin de faire une requete avec 2 parametres a et b. a pour le début, b pour la fin.
    on a : a <= b
    Je veux sommer les GBAN compris entre a et b.
    ex si a =1 et b=2
    je voudrai comme résultat GBAN01+GBAN02

    ex si a =3 et b=6
    je voudrai comme résultat GBAN03+GBAN04+GBAN05+GBAN06

    Je voulai faire un case avec des when mais ca me fait 78 when à écrire d'apres mes calculs...
    Je ne sais pas si c'est possible de faire ce que je veux avec un simple select...
    A mon avis il faudra passer par une fonction ou une procédure.
    Toute aide sera utile.
    Merci
    Florent

  2. #2
    Membre Expert Avatar de pacmann
    Homme Profil pro
    Consulté Oracle
    Inscrit en
    Juin 2004
    Messages
    1 626
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Consulté Oracle
    Secteur : Distribution

    Informations forums :
    Inscription : Juin 2004
    Messages : 1 626
    Par défaut
    Salut !

    Je te propose la version tordue (je laisse le soins aux autres de proposer des trucs intuitifs )

    Si x est compris entre a et b alors :
    => x - a positif
    => b - x positif

    Si x < a, alors x inférieur à b (on suppose que les bornes paramètres seront ordonnées) et :
    => x - a négatif
    => b - x positif

    Si x > b, alors x > a et :
    => x - a positif
    => b - x négatif

    Donc, le cas ou GRANXX doit être ajouté, c'est lorsque (XX - a) * (b - XX) est positif !

    Donc ta somme est simplement
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    CASE WHEN (1 - a) * (b - 1) >= 0 THEN GRAN01 ELSE 0 END 
    + CASE WHEN (2 - a) * (b - 2) >= 0 THEN GRAN02 ELSE 0 END 
    + ...
    + CASE WHEN (12 - a) * (b - 12) >= 0 THEN GRAN12 ELSE 0 END
    Non ?

    [EDIT]
    Je sais que je vais me faire taper sur les doigts, mais on peut faire encore un tout petit peu plus naze :
    si ton SGBD te propose la fonction SIGN(n) qui renvoi 1, 0, -1 selon le signe de n, la formule peut être réécrite :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    sign(1 + sign((1 - a) * (b - 1))) * GRAN01
    + sign(1 + sign((2 - a) * (b - 2))) * GRAN02
    + ..
    + sign(1 + sign((12 - a) * (b - 12))) * GRAN12

  3. #3
    Membre averti
    Inscrit en
    Février 2008
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 10
    Par défaut
    Salut Pacmann
    Merci beaucoup!
    Je vais tester ça mais ca semble être une très bonne idée!

    EDIT Pour moi c'est tout bon!!
    Je met ca en résolu!

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

Discussions similaires

  1. Aide sur requete basique
    Par marcomontreal dans le forum Access
    Réponses: 3
    Dernier message: 10/04/2006, 17h47
  2. Aide sur requete access
    Par Al soltani dans le forum Requêtes et SQL.
    Réponses: 5
    Dernier message: 02/03/2006, 11h58
  3. Besoin d'aide sur requetes imbriquées simples
    Par Kyti dans le forum Langage SQL
    Réponses: 2
    Dernier message: 01/03/2006, 10h52
  4. Aide sur requete PHP vers MySQL
    Par pounie dans le forum Requêtes
    Réponses: 4
    Dernier message: 19/02/2006, 15h12
  5. aide sur requete mysql
    Par digger dans le forum Langage SQL
    Réponses: 8
    Dernier message: 14/01/2006, 10h54

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