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 :

Select sum(Poids) sur max(date) group by adr


Sujet :

Requêtes MySQL

  1. #1
    Membre émérite
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Points : 2 498
    Points
    2 498
    Par défaut Select sum(Poids) sur max(date) group by adr
    :Je fais un noeud dans ma tete pour comprendre comment bien faire le query suivant sans passer eventuellement par une table temporaire

    Ma table contient

    AddrID
    Poids
    Date


    A une meme date je peux avoir plusieurs fois la meme adresse avec des poids different

    Je voudrais avoir pour chaque adresse la somme des poids sur la derniere date donnée pour cette adresse ?

    Comment daire cela sans se mordre la queue

    Merci de votre aide
    « Ils ne savaient pas que c'était impossible, alors ils l'ont fait ». (Twain)

  2. #2
    Expert confirmé Avatar de Cybher
    Homme Profil pro
    Consultant réseaux et sécurité
    Inscrit en
    Mai 2005
    Messages
    3 281
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Consultant réseaux et sécurité
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 281
    Points : 4 641
    Points
    4 641
    Par défaut
    salut,

    essaie quelque chose dans ce style :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    select t.addrID, temp.max(date), t.sum(poids) 
    from taTable t
    join
    (select addrID, max(date) as maxdate
    from taTable 
    group by addr
    ) temp
    on t.addrID=temp.addrID and t.date=temp.maxdate
    group by t.addrID
    pas du tout sur

  3. #3
    Membre émérite
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Points : 2 498
    Points
    2 498
    Par défaut
    Merci

    Ca ne marchait pas,mais
    Finalement tu m'a convaincu de passer par une temporaire

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    drop table if exists maxdt;
    create temporary table maxdt
    Select
    addrid,
    max(date) as maxdate
    from ritstat
    group by addrid
    ;
    SELECT 
    ritstat.addrID,
    sum(gewicht),
    ritstat.date
    FROM 
    ritstat
    inner JOIN maxdt ON ritstat.addrID=maxdt.addrID AND ritstat.date=maxdt.maxdate
    group by addrid
    « Ils ne savaient pas que c'était impossible, alors ils l'ont fait ». (Twain)

Discussions similaires

  1. Aide sur MAX(date)
    Par anttheo dans le forum Langage SQL
    Réponses: 3
    Dernier message: 30/06/2014, 12h40
  2. mysql max date group by
    Par legend79 dans le forum Requêtes
    Réponses: 18
    Dernier message: 10/04/2012, 14h44
  3. [Vxi] Auto-jointure sur max date
    Par Burt67 dans le forum Designer
    Réponses: 2
    Dernier message: 02/02/2011, 16h52
  4. Select avec "having max" sur chp date
    Par Adel_mana dans le forum Langage SQL
    Réponses: 5
    Dernier message: 14/08/2009, 12h01
  5. Selection ligne sur max de date
    Par vince_grenoblois dans le forum Langage SQL
    Réponses: 3
    Dernier message: 24/07/2006, 12h33

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