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 :

probleme avec SUM


Sujet :

Langage SQL

  1. #1
    Membre habitué
    Étudiant
    Inscrit en
    Janvier 2009
    Messages
    174
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 174
    Points : 140
    Points
    140
    Par défaut probleme avec SUM
    bonsoir,

    j’ai cette requête :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    select sum(net),date_caisse,nojour,nobl,nomcl,net,reste from journal,temp_caisse where date_caisse=dateb;
    lors de l’exécution je reçois cette erreur:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ERREUR:  la colonne « temp_caisse.date_caisse » doit apparaître dans la clause GROUP BY ou doit être utilisé dans une fonction d'agrégat
    LINE 2: select sum(net),date_caisse,nojour,nobl,nomcl,net,reste from...
    sachant que les colonnes nojour, nobl,nomcl,net,reste,dateb sont dans la relation journal et date_caisse est dans la relation temp_caisse.
    merci d'avance.

  2. #2
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Sr. Specialist Solutions Architect @Databricks
    Inscrit en
    Septembre 2008
    Messages
    8 453
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Sr. Specialist Solutions Architect @Databricks
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 453
    Points : 18 386
    Points
    18 386

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    569
    Détails du profil
    Informations personnelles :
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2009
    Messages : 569
    Points : 1 046
    Points
    1 046
    Par défaut
    Bonjour,

    Il semble que cela doit répondre à ta demande

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    SELECT date_caisse, nojour, nobl, nomcl, net, reste, sum(net)
    FROM journal J
       INNER JOIN temp_caisse T ON T.date_caisse = J.dateb
    GROUP BY date_caisse, nojour, nobl, nomcl, net, reste
    Si j'ai bien compris ton message, il doit s'agir de faire le cumul d'une journée de ventes en espèces ?

    A+

  4. #4
    Membre habitué
    Étudiant
    Inscrit en
    Janvier 2009
    Messages
    174
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 174
    Points : 140
    Points
    140
    Par défaut
    tout passe bien avec la requête mais la somme n'est pas exacte. elle retourne la valeur de la colonne net du premier tuple parce que le résultat est Multilignes.

  5. #5
    Modérateur

    Profil pro
    dba
    Inscrit en
    Janvier 2010
    Messages
    5 643
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : dba

    Informations forums :
    Inscription : Janvier 2010
    Messages : 5 643
    Points : 13 092
    Points
    13 092
    Par défaut
    Bonjour

    que voulez-vous obtenir comme résultat ?

  6. #6
    Membre éprouvé
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    569
    Détails du profil
    Informations personnelles :
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2009
    Messages : 569
    Points : 1 046
    Points
    1 046
    Par défaut
    Bonjour,

    Certaines données des attributs présents dans ta requête doivent varier à chaque ligne.

    Fais un essai avec la requête ci-dessous.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
      SELECT nojour, sum(net)
        FROM journal J
             INNER JOIN temp_caisse T
               ON T.date_caisse = J.dateb
    GROUP BY nojour
    Le total par jour devrait être exact, si le n° du jour ne change pas à chaque ligne, mais seulement au changement de date.

    Il faut dire que tu ne donnes pas beaucoup d'informations pour t'aider. Il serait bien de donner tes tables et un exemple des données sur plusieurs jours. Il serait alors possible de répondre après avoir fait nos propres essais.

    A+

  7. #7
    Membre habitué
    Étudiant
    Inscrit en
    Janvier 2009
    Messages
    174
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 174
    Points : 140
    Points
    140
    Par défaut
    merci pour vos réponses.

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

Discussions similaires

  1. Probleme avec SUM et GROUP BY de 2 tables [FIREBIRD]
    Par fthdz dans le forum Langage SQL
    Réponses: 4
    Dernier message: 14/02/2010, 18h22
  2. probleme avec SUM et TIMEDIFF
    Par bidochon dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 26/12/2006, 14h31
  3. probleme avec la fonction sum (debutant)
    Par mcf1 dans le forum Langage SQL
    Réponses: 3
    Dernier message: 31/05/2006, 09h38
  4. probleme avec la fonction sum (debutant)
    Par mcf1 dans le forum Langage SQL
    Réponses: 3
    Dernier message: 31/05/2006, 09h33
  5. Probleme avec requete et sum
    Par Treuze dans le forum Langage SQL
    Réponses: 1
    Dernier message: 09/01/2006, 17h28

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