Bonjour,
Je n'arrive pas à calculer un pourcentage avec un group by.
A propos du poker, j'aimerais calculer pour chaque joueur, le pourcentage de mains jouées sur le nombre total où il a relancé ('raise') au tour preflop.
Mes tables sont: Action(IDAction,IDJoueur,IDTour,TypeAction,Montant), Participe(IDJoueur,IDMain,Position,Gagnant), j'ai crée une vue _nbmainsjouees qui calcule pour chaque joueur le nombre de mains totales qu'il a participé.

Voila ce que j'ai fait:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
CREATE VIEW _PFR AS
     SELECT _nbmainsjouees.IDJoueur, IFNULL(COUNT(DISTINCT P.IDMain)/nbmainsjouees,0) as pourcentage_raise_au_preflop
     FROM Participe as P, _nbmainsjouees
     WHERE P.IDMain IN   (SELECT P.IDMain
                 FROM participe AS P, action AS A
                 WHERE A.IDTour = 1
                 AND TypeAction = 'raise' )
   GROUP BY _nbmainsjouees.IDJoueur

Je ne sais pas si ça vaut quelque chose mais en tout cas il ne me renvoie aucun enregistrement alors que j'aimerai obtenir pour chaque joueur un pourcentage, meme s'il est égal à 0.

Ca serait vraiment simpa si quelqu'un pouvait m'éclairer!

olivt0603,