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 :

Cumul par champs de la même table


Sujet :

Langage SQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2005
    Messages
    103
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2005
    Messages : 103
    Par défaut Cumul par champs de la même table
    Bonjour,

    j'ai une table : ttable (code_article, libelle_article, qt)

    Code article / Libelle article / Qt
    1 / Article1 / 2
    1 / Article1 / 4
    2 / Article2 / 4
    1 / Article1 / 3
    2 / Article2 / 8

    Objectif : (en utilisant la fameuse SELECT ....), je veux un résultat comme ceci :

    1 / Article1 / 9 (Total Qt de l'article 1) 2+4+3
    2 / Article2 / 12 (Total Qt de l'article 2) 4+8

    c'est à dire cumul par le champs QT pour chaque article

    Merci d'avance

  2. #2
    Membre expérimenté
    Avatar de diablo-dz
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2014
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2014
    Messages : 75
    Par défaut
    Bonsoir
    Essaye avec cette requête
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    select code_article, libelle_article, sum(Qt)
    From ttable
    GROUP BY  libelle_article
    A++
    Diablo-Dz

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

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2009
    Messages : 591
    Par défaut
    Bonjour,

    @diablo-dz

    Je pense que tu ne dois inclure dans ta requête la colonne "Libelle_article". Si le libellé est différent pour un même "Code_article", alors ton total pour l'article 1 sera inexact, car la requête s'appuie sur le "Code_article" et le "Libelle_article". (Une simple lettre différente dans le libellé est suffisante pour entraîner un calcul erroné)

    La requête doit être établie ainsi :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT code_article, sum(Qt)
    FROM ttable
    GROUP BY  code_article
    C'est d'ailleurs la demande formulée dans la question de @camatchou

  4. #4
    Membre expérimenté
    Avatar de diablo-dz
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2014
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2014
    Messages : 75
    Par défaut
    Certes, je ne dis pas que tu as tort mais si tu dis que le libellé peut être différent pour un même code-article après tu réponds avec une requête qui va sommer des articles différents et je crois que ce n'est pas la demande formulée dans la question de camatchou (1 / Article1 / 9), c'est pour ça que je ne suis pas d’accord avec toi.
    j’ai pensé à ça mais dis-moi tu trouves normal une table ne contient pas de clé primaire c’est le cas dis-moi pour quoi il y a des doublost, c’est pour ça j’ai penché à ma solution.

  5. #5
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2005
    Messages
    103
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2005
    Messages : 103
    Par défaut
    Merci les amis pour vos réponses,

    Si j'ai bien compris , l'idéal c'est l'utilisation du code_article,

    donc :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT code_article, sum(Qt)
    FROM ttable
    GROUP BY  code_article
    Mon problème est résolu partiellement, car en ajoutant le libellé, la commande ne marche plus !
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT code_article, libelle_article,sum(Qt)
    FROM ttable
    GROUP BY  code_article
    mais bon , je suis déjà tres satisfait du résultat; et je vous en remercie beaucoups.
    A+

  6. #6
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 136
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 136
    Par défaut
    Dans ce cas, il suffit d'ajouter libelle_article aux conditions de regroupement
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT code_article, libelle_article, sum(Qt)
    FROM ttable
    GROUP BY  code_article, libelle_article
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

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

Discussions similaires

  1. Update critériel de plusieurs champs d'une même table
    Par Xorbane dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 27/10/2007, 18h12
  2. Conditions sur les champs d'une même table
    Par Pucho dans le forum Modélisation
    Réponses: 10
    Dernier message: 19/10/2007, 17h52
  3. Réponses: 2
    Dernier message: 31/01/2007, 09h49
  4. Plusieurs Champs d'une même table dans plusieurs textebox
    Par cyberbiker dans le forum VB 6 et antérieur
    Réponses: 11
    Dernier message: 13/09/2006, 11h32
  5. [Requête] plusieurs champs dans une même table ayants la même source
    Par Christophe93250 dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 25/04/2006, 16h18

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