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 :

Somme de différentes valeurs


Sujet :

Langage SQL

  1. #1
    Membre régulier Avatar de PtitGénie
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2007
    Messages
    231
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2007
    Messages : 231
    Points : 88
    Points
    88
    Par défaut Somme de différentes valeurs
    Bon, je ne savais pas du tout quel titre mettre pouvant correspondre à ma question o_O

    Alors voilà (bonjour à tous !), j'ai un tableau de ce genre :

    COLONNE A - COLONNE B - COLONNE C

    20080701 - 30 - 102
    20080701 - 10 - 102
    20080701 - 15 - 102
    20080701 - 25 - 102
    20080702 - 17 - 75
    20080702 - 14 - 75
    20080702 - 23 - 75
    20080703 - 28 - 83
    20080703 - 45 - 83
    20080703 - 51 - 83
    20080703 - 85 - 83
    20080703 - 19 - 83
    ...

    Je veux additionner toutes les valeurs de la colonne B, pour faire une somme par mois (ici 200807). Et, en plus, je veux faire la somme des valeurs de la colonne C, mais pas de toutes, parce qu'elles sont toutes identiques pour une même journée. Et donc ne faire que la somme de la valeur de la colonne C du 20080701 avec la valeur de la colonne C du 20080702 etc.

    Voilà ce que j'ai fait :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT colonneA, ((SUM(colonneB)*100)/SUM(colonneC))
    FROM tablexxx
    WHERE to_char(colonneA, 'yyyymm') = '200807'
    GROUP BY to_char(colonneA, 'yyyymm')
    Mon problème ici étant que le calcul ((SUM(colonneB)*100)/SUM(colonneC)) avec donc SUM(colonneC) va faire la somme de 102 + 102 + 102 + 102 + 75 + 75 +75... et non pas 102 + 75 + 83 !

    Merci d'avance pour le petit coup de pouce ^^

  2. #2
    Expert confirmé
    Profil pro
    Inscrit en
    Août 2008
    Messages
    2 947
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 2 947
    Points : 5 846
    Points
    5 846
    Par défaut
    Salut,
    Si c3 est toujours constant par jour alors une sous-requête devrait faire l'affaire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    SELECT to_char(colonneA, 'yyyymm'),SUM(somme)/sum(colonneC) 
    FROM (
    	select colonneA,sum(colonneB) as somme,colonneC
    	from tablexxx
    	WHERE to_char(colonneA, 'yyyymm') = '200807'
    	group by colonneA,colonneC
    )
    group by to_char(colonneA, 'yyyymm')
    Sinon les fonctions analytiques devraient te permettre de fouiner, mais toujours à l'intérieur d'une sous-requête.

  3. #3
    Membre régulier Avatar de PtitGénie
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2007
    Messages
    231
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2007
    Messages : 231
    Points : 88
    Points
    88
    Par défaut
    Merci beaucoup, cela fonctionne !

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

Discussions similaires

  1. Parcourir les différentes valeurs d'une énumération
    Par mister3957 dans le forum Général VBA
    Réponses: 4
    Dernier message: 09/03/2008, 09h07
  2. [Trigger] Somme de différentes lignes
    Par outlawz dans le forum Oracle
    Réponses: 5
    Dernier message: 08/09/2006, 16h32
  3. [T-SQL] une colonne pour stocker différentes valeurs
    Par kakid dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 12/06/2006, 18h40
  4. [CR 11] Différentes valeurs d'un champ en en-tête
    Par KrusK dans le forum SAP Crystal Reports
    Réponses: 5
    Dernier message: 24/08/2005, 15h23
  5. [Débutant] somme de la valeur d'attributs...
    Par SteelBox dans le forum XSL/XSLT/XPATH
    Réponses: 7
    Dernier message: 10/07/2004, 22h38

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