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

EDI, CMS, Outils, Scripts et API PHP Discussion :

Problème avec le count et le sum [phpMyAdmin]


Sujet :

EDI, CMS, Outils, Scripts et API PHP

  1. #1
    Membre à l'essai
    Femme Profil pro
    Développeur Web
    Inscrit en
    Juin 2014
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2014
    Messages : 23
    Points : 14
    Points
    14
    Par défaut Problème avec le count et le sum
    bonjour,

    dans ma table SQL j'ai les tables

    janvier ("Gencod", "Qte")
    fel ("FEAN","Editeur")

    faut savoir que Gencod=FEAN et qu'il y a plusieurs fois le même Gencod donc plusieurs Qte
    je recherche les Editeur par Gencod et la somme de la Qte

    ma requête:

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT Editeur, COUNT(FEAN), SUM(Qte)
    FROM fel, janvier
    WHERE fel.FEAN=janvier.Gencod
    GROUP BY Editeur;

    j'ai bien les Editeurs
    cependant dans mon fichier janvier j'avais fait la somme de toute les Qte sa me donner 71 862 et quand je fait la somme des Qte au résultat de la requête sa me donne 80 093

    donc il y a un problème, je sais pas si sa vient de ma requête. pouvez-vous m'aider s'il vous plait?

    Cordialement,

    Séverine.

  2. #2
    Membre à l'essai
    Femme Profil pro
    Développeur Web
    Inscrit en
    Juin 2014
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2014
    Messages : 23
    Points : 14
    Points
    14
    Par défaut modification que je suis en train de tester
    vu que je travaille sur les Gencod je vais remplacer "COUNT(FEAN)" par "COUNT(Gencod)" car dans le fel il y a beaucoup plus de FEAN qu'il y en a dans janvier

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT Editeur, COUNT(Gencod), SUM(QTE)
    FROM fel, janvier
    WHERE fel.FEAN=janvier.Gencod
    GROUP BY Editeur;

    en réfléchissant je ne croit pas qu'il y ai plusieurs fois le même FEAN dans le fel
    mais bon j'essaie quand même et je vous tiens au courant
    si jamais vous avez des suggestion, c'est avec plaisir.

  3. #3
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    commence par mettre des noms de champs/tables plus explicites !

    et aussi plus cohérents dans leur écriture : tout minuscule ou tout majuscule, mais pas des mélanges.

    La structure REELLE des tables + des extraits significatifs seraient un plus...

  4. #4
    Membre à l'essai
    Femme Profil pro
    Développeur Web
    Inscrit en
    Juin 2014
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2014
    Messages : 23
    Points : 14
    Points
    14
    Par défaut merci tout de même
    Bonjour

    Comment vous dire que c'est des tables d'un million de ligne importer dans php my admin
    et je ne peux pas forcement changer les champs parce que la base ne m'appartient pas...

  5. #5
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par Séverine.r Voir le message
    ... je ne croit pas qu'il y ai plusieurs fois le même FEAN dans le fel...
    Soit. Mais comprends bien que cette phrase n'a aucun sens sans explication !
    FEAN ? fel ?

  6. #6
    Membre à l'essai
    Femme Profil pro
    Développeur Web
    Inscrit en
    Juin 2014
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2014
    Messages : 23
    Points : 14
    Points
    14
    Par défaut
    j'ai tous mis au début...

  7. #7
    Membre à l'essai
    Femme Profil pro
    Développeur Web
    Inscrit en
    Juin 2014
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2014
    Messages : 23
    Points : 14
    Points
    14
    Par défaut images
    c'est que une base test...
    pour vous montrer comment c'est fait... meme si normalement il y a 43 champs dans la TABLE fel et 5 dans la TABLE janvier*

    Nom : base.png
Affichages : 223
Taille : 172,9 Ko
    Nom : fel.png
Affichages : 209
Taille : 208,6 Ko
    Nom : janvier.png
Affichages : 210
Taille : 205,9 Ko

  8. #8
    Membre à l'essai
    Femme Profil pro
    Développeur Web
    Inscrit en
    Juin 2014
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2014
    Messages : 23
    Points : 14
    Points
    14
    Par défaut résultat voulu
    le résultat que je veux est le suivant

    sur les images ci-dessus on voit que dans la table janvier il y a 2 fois le même gencod et dans la Qte additionner ces deux dernier

    Editeur Gencod Qte
    aurelien 2 14(8+6)
    didier 2 14(9+5)
    hugo 2 3(2+1)
    Victor 2 8(3+5)

    Cependant ce que fait ma requete actuel:

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT Editeur, COUNT(Gencod), SUM(Qte)
    FROM fel, janvier
    WHERE fel.FEAN=janvier.Gencod
    GROUP BY Editeur;

    Résultat:

    Editeur Gencod Qte
    aurelien 4(2 Gencod+2 FEAN) 28(14+14)
    didier 4(2 Gencod+2 FEAN) 28(14+14)
    hugo 4(2 Gencod+2 FEAN) 6(3+3)
    victor 4(2 Gencod+2 FEAN) 16(8+8)


    Des solutions?

  9. #9
    Invité
    Invité(e)
    Par défaut
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    	SELECT fel.Editeur, 
    	(SELECT COUNT(FEAN) FROM fel WHERE fel.FEAN = janvier.Gencod) AS NbreGenCode,
    	(SELECT SUM(QTE) FROM janvier WHERE fel.FEAN = janvier.Gencod) AS SumQte
    	FROM fel
    	INNER JOIN janvier
    		ON fel.FEAN = janvier.Gencod
    	GROUP BY Editeur;
    Dernière modification par Invité ; 02/06/2015 à 17h22.

  10. #10
    Membre à l'essai
    Femme Profil pro
    Développeur Web
    Inscrit en
    Juin 2014
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2014
    Messages : 23
    Points : 14
    Points
    14
    Par défaut
    merci pour votre réponse
    cependant on peut pas mettre sa dans "SQL" dans phpmyadmin?

  11. #11
    Membre à l'essai
    Femme Profil pro
    Développeur Web
    Inscrit en
    Juin 2014
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2014
    Messages : 23
    Points : 14
    Points
    14
    Par défaut SA MARCHE
    YES
    YES
    YES sa marche
    Merci infiniment (sa fait 3 semaine je suis la dessus)

  12. #12
    Invité
    Invité(e)
    Par défaut
    alors ça mérite un , non ?

  13. #13
    Invité
    Invité(e)
    Par défaut
    Explication de la requête :
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    			SELECT fel.Editeur, 
    			(SELECT COUNT(FEAN) FROM fel WHERE fel.FEAN = janvier.Gencod) AS NbreGenCode,
    			(SELECT SUM(QTE) FROM janvier WHERE fel.FEAN = janvier.Gencod) AS SumQte
    			FROM fel
    			INNER JOIN janvier
    				ON fel.FEAN = janvier.Gencod
    			GROUP BY Editeur;
    0/ on sélectionne "Editeur", "NbreGenCode", "SumQte"
    1/ on joint les tables "fel" et "janvier" selon la condition : fel.FEAN = janvier.Gencod
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    			FROM fel
    			INNER JOIN janvier
    				ON fel.FEAN = janvier.Gencod
    2/ on met dans le champ virtuel "NbreGenCode" le COMPTE des lignes de la table "fel" répondant au critère
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    			(SELECT COUNT(FEAN) FROM fel WHERE fel.FEAN = janvier.Gencod) AS NbreGenCode
    3/ on met dans le champ virtuel "SumQte" la SOMME des "QTE" des lignes de la table "janvier " répondant au critère
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    			(SELECT SUM(QTE) FROM janvier WHERE fel.FEAN = janvier.Gencod) AS SumQte
    4/ on groupe par éditeur

    N.B. Ca fonctionne...
    ... mais il y a peut-être plus simple (?)...
    Je ne suis pas spécialiste !

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

Discussions similaires

  1. [XL-2007] Problème avec columns.count
    Par issoram dans le forum Macros et VBA Excel
    Réponses: 11
    Dernier message: 29/09/2010, 16h30
  2. Problème avec un count et une imbrication
    Par zoharcryss dans le forum Langage SQL
    Réponses: 11
    Dernier message: 15/07/2009, 15h24
  3. petit problème avec un COUNT()
    Par ctobini dans le forum Requêtes
    Réponses: 4
    Dernier message: 12/12/2007, 16h53
  4. [MySQL] Problême avec un COUNT sur un template
    Par Vinuto dans le forum PHP & Base de données
    Réponses: 10
    Dernier message: 26/06/2007, 16h37
  5. [SQL] Problème avec SELECT COUNT(*)
    Par jpascal dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 17/11/2006, 12h37

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