J'essaie d'obtenir une requête MySQL pour obtenir la quantité moyenne d'appareils uniques à partir d'une table qui enregistre les adresses mac, pour chaque jour de la semaine dans un mois et une année donnés . Jusqu'à présent, j'ai cela pour compter tous les appareils.MySQL Moyenne x unique pour le jour de la semaine
SELECT DAYNAME(date_time) dow,
DAYOFWEEK(date_time) day_num,
COUNT(DISTINCT (mac)) as devices
FROM detected_devices
WHERE client_id = 11
AND venue_id = 1
AND EXTRACT(YEAR FROM date_time) = 2010
AND EXTRACT(MONTH FROM date_time) = 12
GROUP BY dow
ORDER BY day_num
Ceci m'obtient le nombre total d'appareils mais je ne peux pas sembler utiliser la fonction AVG aussi. J'ai essayé cette ligne à la place mais ai l'erreur # 1111 - Utilisation invalide de la fonction de groupe quand je fais.
AVG(COUNT(DISTINCT (mac))) as devices
Avez-vous essayé 'AVG (DISTINCT (mac)) comme périphériques'? – jgauffin
Ah, ça donne des résultats oui, merci. Cependant, les résultats semblent un peu étrange .. par exemple - Lundi = 19291096024292.0804 appareils! Lorsque la fonction de comptage ci-dessus a renvoyé 52 – ajay87
, je suppose que c'est en fait la moyenne de chaque adresse mac distincte qui donnerait ce type de valeur. J'ai besoin de l'AVG d'un COUNT de DISTINCT macs vraiment – ajay87