Statistique sur ma table.

Eléphant du PHP | 89 Messages

13 avr. 2005, 17:14

Bonjour,

j'ai crée la table numéro contenant les données suivantes:

1978-02-04 20
1978-02-04 21
1978-02-04 22
1978-02-04 23
1978-02-04 24
1978-02-04 25

1978-02-11 23
1978-02-11 24
1978-02-11 25
1978-02-11 17
1978-02-11 18
1978-02-11 19

1978-02-30 19
1978-02-30 20
1978-02-30 21
1978-02-30 35
1978-02-30 36
1978-02-30 37

Pour chaque date, il y a 6 numéros. Comment faire pour connaître le n°
qui est sorti le plus souvent;
qui est sorti le plus de fois d'affilée;
qui est resté le plus logntemps sans sortir ?

Merci pour votre aide.

PS: Je travaille avec mysql 3.X

Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

13 avr. 2005, 17:34

au hasard pour le numéro sorti le plus souvent

Code : Tout sélectionner

SELECT numero, MAX(COUNT(*)) FROM numéros GROUP BY numero
mais le Max() sur le Count() c'est à tester :)

Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

13 avr. 2005, 19:45

en fait je t'ai dit n'importe quoi avec mon Max(Count(*)) :oops:

tu peux faire ça :

Code : Tout sélectionner

SELECT numero, COUNT(*) as total FROM numéros GROUP BY numero ORDER BY total DESC LIMIT 0,1
te sort la liste des numéros avec le nombre de fois où ils sont sorti, triée par ordre décroissant, et ne sélectionne que le premier, donc celui qui est sorti le plus de fois

Eléphant du PHP | 89 Messages

15 avr. 2005, 12:52

Ca fonctionne impec !!! Un grand merci.

Les noms des colonnes étant dtirage, num et id dans ma table numero, la requête correcte est:

SELECT num, COUNT( * ) AS total
FROM numero
GROUP BY num
ORDER BY total DESC

Quid pour les + grand nombre de sorties consécutive et le nombre de fois sans sortie ?