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

Requêtes MySQL Discussion :

Sum() et Sum(avec condition)


Sujet :

Requêtes MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2006
    Messages : 7
    Par défaut Sum() et Sum(avec condition)
    Bonjour,

    J'ai besoin d'un petit coup de pousse pour un petit problème.

    Voilà, j'ai une table

    REF | DATE | VISITE
    A01|2010-05-10|5
    A02|2010-05-10|3
    A03|2010-05-10|7
    A01|2010-05-09|4

    Et je dois afficher un tableau

    REF | Total visite | Visite J-1
    A01 | 9 | 4
    A02 | 3 | ...
    A03 | 7 | ...

    Pour le total visite et le tri sur REF et TOTAL, j'ai pas de soucis.
    c'est plutot pour le J-1, pour l'afficher et faire un tri dessus...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT REF, SUM(VISITE) AS CPT
    FROM STATS
    GROUP BY REF
    ORDER BY REF ASC (ou CPT ASC)
    Je ne vois pas comment imbriquer la code pour avoir le j-1...

    Si quelqu'un pouvait me mettre sur le voie... ce serait surper !
    Merci d'avance.

  2. #2
    Membre émérite Avatar de Oishiiii
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2009
    Messages
    508
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Août 2009
    Messages : 508
    Par défaut
    Bonjour,

    J'ai tendance à simplifier, décomposer avec des tables dérivées (sous-requête de la clause FROM), comme ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    SELECT ref, totalVisite, visiteJmoins1
    FROM (
      SELECT ref, SUM(visite) AS totalVisite
      FROM stats
      GROUP BY ref
    ) AS tt
      NATURAL JOIN (
        SELECT ref, SUM(visite) AS visiteJmoins1
        FROM stats
        WHERE date = DATE_SUB(CURRENT_DATE, INTERVAL 1 DAY)
        GROUP BY ref
      ) AS vj1
    A essayer aussi, un IF (ou CASE) dans le SUM():
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    SELECT 
      ref, 
      SUM(visite) AS totalVisite, 
      SUM(IF(date=DATE_SUB(CURRENT_DATE, INTERVAL 1 DAY), visite, 0)) AS visiteJmoins1
    FROM stats
    GROUP BY ref

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2006
    Messages : 7
    Par défaut
    Punaise... heu... MERCI !

    J'ai juste pris cette ligne, car je devais l'imbriquer dans une requete déjà existante.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SUM(IF(date=DATE_SUB(CURRENT_DATE, INTERVAL 1 DAY), visite, 0)) AS visiteJmoins
    Ca marche nickel, l'affichage et le tri...
    L'autre j'ai essayé, mais cela ne m'affichait rien. e n'ai pas persisté car l'autre fonctionnait parfaitement...

    Encore merci... et bonne continuation...

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

Discussions similaires

  1. SUM avec conditions
    Par Archi89 dans le forum Développement
    Réponses: 4
    Dernier message: 10/12/2014, 08h11
  2. Aide avec fonction SUM avec condition
    Par Beaudelicius dans le forum Langage SQL
    Réponses: 2
    Dernier message: 11/01/2012, 22h30
  3. Requête SUM avec conditions
    Par madsland dans le forum Langage SQL
    Réponses: 10
    Dernier message: 21/03/2011, 16h34
  4. Sum avec condition
    Par lanjolanjo dans le forum Langage SQL
    Réponses: 8
    Dernier message: 15/10/2008, 18h53
  5. Faire un SUM avec conditions sans tables temporaires
    Par jonklay dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 03/01/2007, 09h39

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