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 :

[Requête][GROUP BY]compter les nombre d'appel par clients


Sujet :

Requêtes MySQL

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 28
    Points : 18
    Points
    18
    Par défaut [Requête][GROUP BY]compter les nombre d'appel par clients
    bonjour,

    Je suis en train de travailler sur une base de donnée et je rencontre un probleme (due surement a mon manque de pratique) sur une requete SQL.

    La base de donnee possede 3 tables:
    -client (id_client,nom,....)
    -hotline(id_hotline,...id_client)
    -hotline_call(id_hotline_call,hstart,hend,...id_hotline)

    La table hotline_call reference les details de chaque appel et notamment les heures de debut et de fin de chaque traitement.

    Ma requete est simple, je souhaite afficher le nombre d'id_hotline cloturé par client pour une date donnée.

    Le probleme est le suivant: il faut que je recupere au préalable le dernier enregistrement(id_hotline_call) de chaque id_hotline et ensuite que je les comptes.
    Comment faire pour les compter?

    Avec la requete suivant , j'arrive a recuperer toutes les info qu'il me faut mais je n'arrive pas a compter les nombre d'appel par clients

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    SELECT nom, hotline_call.id_hotline, max( id_hotline_call ), hend
    FROM hotline_call, clients, hotline
    WHERE hend LIKE '2005-09%'
    AND hotline.id_hotline = hotline_call.id_hotline
    AND clients.id_client = hotline.id_client
    GROUP BY hotline_call.id_hotline
    ORDER BY nom
    Des que j'essaye de placer un SELECT nom, count(hotline_call.id_hotline), max( id_hotline_call ), hend le resultat retourner n'est plus du tout coherent.




    [titre édité par Maximilian]

  2. #2
    Membre régulier Avatar de jp_rennes
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    72
    Détails du profil
    Informations personnelles :
    Âge : 51
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Mars 2006
    Messages : 72
    Points : 86
    Points
    86
    Par défaut idée
    essaye :
    SELECT nom, hotline_call.id_hotline, max( id_hotline_call ),count(*)
    FROM hotline_call, clients, hotline
    WHERE hend LIKE '2005-09%'
    AND hotline.id_hotline = hotline_call.id_hotline
    AND clients.id_client = hotline.id_client
    GROUP BY hotline_call.id_hotline
    ORDER BY nom;

    J'espère que ça marche......

  3. #3
    Membre expert
    Avatar de TheLeadingEdge
    Inscrit en
    Mai 2005
    Messages
    1 199
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 1 199
    Points : 3 103
    Points
    3 103
    Par défaut
    Bonjour,

    Au vu du schema que tu donnes, tu n'as pas de restriction possible sur id_client dans ta table hotline_call, le mieux que tu pourras obtenir c'est le nombre d'appel par id_hotline en ajoutant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    GROUP BY HotlineCall.idHotline,nom

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 28
    Points : 18
    Points
    18
    Par défaut
    Bon apres m'etre cassé la tete sur cette requete , j 'ai opter pour l'option B a savoir un traitement PHP derriere la requete.

    Un simple parcourt de tableau avec un compteur m'a permi de resoudre mon probleme.

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 04/09/2012, 10h19
  2. Réponses: 3
    Dernier message: 27/07/2012, 11h25
  3. Réponses: 9
    Dernier message: 21/09/2009, 15h56
  4. Requête GROUP BY inclure les résultats NULL
    Par cantador dans le forum SQL
    Réponses: 14
    Dernier message: 10/10/2008, 08h45
  5. [MS-DOS] Compter les nombres de jours entre deux dates diffé
    Par Furius dans le forum Scripts/Batch
    Réponses: 4
    Dernier message: 19/02/2006, 13h33

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