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 et SQL. Discussion :

regroupement de tables dans une requete avec chiffre MAX


Sujet :

Requêtes et SQL.

  1. #1
    Membre du Club
    Inscrit en
    Mars 2005
    Messages
    158
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 158
    Points : 65
    Points
    65
    Par défaut regroupement de tables dans une requete avec chiffre MAX
    Bonjour

    j'ai 3 tables

    1ere "Members"
    Member_ID ! Alias

    2eme "ng_memb_log"
    ng_game_id ! date_score

    3eme "ng_memb_stats"
    memb_id ! game_id ! score

    Et je voudrais faire une requete pour regrouper chaque membre, et ne garder de chaque membre que son meilleur score, et que des 30 derniers jours

    Si quelqu'un a une idée, je le remercie d'avance
    Car moi je n'arrive pas a n'afficher qu'une seule fois le membre

    Merci d'avance

  2. #2
    Membre chevronné
    Inscrit en
    Août 2006
    Messages
    1 588
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 1 588
    Points : 2 178
    Points
    2 178
    Par défaut
    il faut une premiere requête qui supprime les jours non désirés
    soit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    SELECT members.alias, ng_memb_stats.member_id, ng_memb_stats.game_id
    FROM (members INNER JOIN ng_memb_stats ON members.member_id = ng_memb_stats.member_id) INNER JOIN ng_memb_log ON ng_memb_stats.game_id = ng_memb_log.ng_game_id
    WHERE (((ng_memb_log.date_score)>Now()-30))
    GROUP BY members.alias, ng_memb_stats.member_id, ng_memb_stats.game_id;
    qui se nomme Requête4
    puis une seconde basée sur la premiere et qui ne conserve que le score max
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
     SELECT Requête4.alias, Max(ng_memb_stats.score) AS MaxDescore
    FROM Requête4 INNER JOIN ng_memb_stats ON (Requête4.game_id = ng_memb_stats.game_id) AND (Requête4.member_id = ng_memb_stats.member_id)
    GROUP BY Requête4.alias;

  3. #3
    Membre du Club
    Inscrit en
    Mars 2005
    Messages
    158
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 158
    Points : 65
    Points
    65
    Par défaut
    Merci ca fonctionne

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

Discussions similaires

  1. Utilisation de COUNT() dans une requete avec 3 table
    Par chych dans le forum Requêtes
    Réponses: 1
    Dernier message: 18/06/2010, 11h54
  2. Réponses: 3
    Dernier message: 03/05/2008, 16h44
  3. Somme dans une requete avec regroupement
    Par louroulou dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 19/07/2006, 21h20
  4. Regroupement par tranche dans une requete SQL (MS SQL)
    Par AODRENN dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 21/03/2006, 13h21
  5. Calculs dans une requete avec conditions multiples
    Par Sha1966 dans le forum Access
    Réponses: 3
    Dernier message: 13/01/2006, 15h18

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