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 :

Faire la somme des données identiques


Sujet :

Langage SQL

  1. #1
    Membre habitué
    Inscrit en
    Novembre 2007
    Messages
    390
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 390
    Points : 179
    Points
    179
    Par défaut Faire la somme des données identiques
    Bonjour,

    Je veux avoir la somme des données identiques sans avoir chaque donnée a sa quantité. J'ai essayé avec ce code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    select e.num_serie, e.designation, ia.reference, a.designation, SUM(ia.quantite) as somme
    from equipement e, intervention i, be_equipement be, int_art ia, article a
    where e.code_equipement=be.code_equipement
    and i.numero_be= be.numero_be
    and ia.num_interv = i.num_interv
    and e.num_serie = '10'
    and ia.reference = a.reference
    group by e.num_serie, e.designation, ia.reference, a.designation,ia.quantite having ia.quantite > 0
    Exemple :

    j'ai comme résultat:
    1- 10 - A - 11 - Art1 -5
    2- 10 - A - 11 - Art1 - 3
    3- 10 - A - 02 - Art22-12

    Je cherche ce résultat:

    1- 10 - A - 11 - Art1 - 8
    2- 10 - A - 2 - Art22 -12

    Merci pour vos propositions.

  2. #2
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Customer Success Manager @Vertica
    Inscrit en
    Septembre 2008
    Messages
    8 452
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Customer Success Manager @Vertica
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 452
    Points : 17 820
    Points
    17 820
    Par défaut
    Il faut enlever la quantité de votre clause de regroupement.

  3. #3
    Membre expérimenté
    Homme Profil pro
    Ingenieur de recherche - Ecologue
    Inscrit en
    Juin 2003
    Messages
    1 146
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingenieur de recherche - Ecologue

    Informations forums :
    Inscription : Juin 2003
    Messages : 1 146
    Points : 1 412
    Points
    1 412
    Par défaut
    Je veux avoir la somme des données identiques sans avoir chaque donnée a sa quantité.
    je ne comprend pas !

    mais en me référant la requête, elle a un problème :
    est incorrect.
    Ce doit être la valeur de regroupement qui doit être dans la clause HAVING
    Si l'idée est d'inclure les quantités > 0
    alors c'est dans la clause WHERE qu'il faut l'indiquer
    Merci d'ajouter un sur les tags qui vous ont aidé

  4. #4
    Membre expérimenté
    Avatar de islamov2000
    Homme Profil pro
    Ingénieur d'études & developpement en informatique
    Inscrit en
    Septembre 2007
    Messages
    814
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Ingénieur d'études & developpement en informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2007
    Messages : 814
    Points : 1 717
    Points
    1 717
    Billets dans le blog
    6
    Par défaut
    c'est ce que tu cherches!!!!
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    SELECT e.num_serie, e.designation, ia.reference, a.designation, SUM(ia.quantite) AS somme
    FROM equipement e, intervention i, be_equipement be, int_art ia, article a
    WHERE e.code_equipement=be.code_equipement
    AND i.numero_be= be.numero_be
    AND ia.num_interv = i.num_interv
    AND e.num_serie = '10'
    AND ia.reference = a.reference
    GROUP BY e.num_serie, e.designation, ia.reference, a.designation
    HAVING SUM(ia.quantite) > 0
    d'avoir Pensé à voter positivement pour ceux qui vous ont aidés et surtout à mettre si le cas.
    ça encourage.

Discussions similaires

  1. Réponses: 10
    Dernier message: 14/02/2007, 17h03
  2. [Requête] faire la somme des max pour chaque utilisateur
    Par novices dans le forum Langage SQL
    Réponses: 3
    Dernier message: 13/02/2007, 11h45
  3. Réponses: 1
    Dernier message: 23/01/2007, 18h23
  4. [MySQL] Php, je ne comprends pas comment faire pour introduire des données dans une table
    Par Liondd dans le forum PHP & Base de données
    Réponses: 23
    Dernier message: 14/12/2006, 12h53
  5. [VB6]Comment faire pour récuperer des donnée sur un mp3 ou wav ?
    Par MegaBigBoss dans le forum VB 6 et antérieur
    Réponses: 13
    Dernier message: 13/06/2006, 16h08

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