Mysql somme grouper pas mois

Résolu
Bonjour à vous :)

Voilà, dans ma BDD se trouve des articles en colonne 1 (T shirt, pantalons, chaussettes etc..) dans ma colonnes 2 se trouve des prix et dans ma colonne trois des dates au format jj/mm/aaaa.

J'aimerai, en MySQL ou en SQL, faire la somme des articles entre eux (donc somme de tout les t shirt, somme de tout les pantalons etc sans qu'ils se mélangent aux autres articles) et je voudrai que ses sommes sois trier par mois.

Pouvez vous m'aider? :) Merci :)

1 réponse

  1. Modérateur
    Bonjour,

    Avant de t'aider .....

    des dates au format jj/mm/aaaa.

    Commence par corriger ça !

    Une date est au format YYYY-mm-dd ..... et pour la stocker on utilise un champ au format DATE ou DATETIME ou TIMESTAMP (qui sont fait pour ça) !

    Ensuite :

    J'aimerai, en MySQL ou en SQL,

    Mysql c'est le "moteur" de ta base de données .... SQL c'est le langage utilisé pour faire les requêtes.


    faire la somme des articles entre eux (donc somme de tout les t shirt, somme de tout les pantalons etc sans qu'ils se mélangent aux autres articles)

    Pour ça il existe la fonction GROUP BY


    et je voudrai que ses sommes sois trier par mois.

    Pour ça... corrige le point numéro 1 de ma réponse.
    Ensuite tu pourras utiliser la fonction MONTH() et les ORDER BY

    NB: Ta question concernant la base de données (et les requêtes) elle doit être postée dans le forum correspondant .... je la déplace de suite.

    0
    1. J'en étais arrivé à plus ou moins la même conclusion que toi mais c'est la mise en forme du code qui me pose soucis.

      Merci quand même
      0
    2. Modérateur
      @SleepyAshes
      la mise en forme du code qui me pose soucis.

      Montres nous donc ce que tu as essayé .... on va voir pour te le corriger....

      Mais bon.. ça donnera un truc du genre :
      SELECT MONTH(champdate) as MOIS, 
                   SUM(colonne 1) as SOMME
      FROM tatable
      GROUP BY colonne 1, MONTH(champdate)
      ORDER BY MONTH(champdate) ASC
      
      0
    3. J'ai essayé :

      SELECT Col1, Format (sum(Col2),2)
      from Ma_Table
      order by Date

      Mais je vais essayer ta méthode
      0