Ho una tabella di MySQL dove ho ottenuto una lista di numeri, raccolti da un gioco in cui gli utenti devono fare clic su un pulsante per avvicinarsi a 100.Come posso contare il numero medio più vicino a 100?
ho pensato di usare AVG()
, ma questo non funzionerà ovviamente, perché quando hai 0 e 200, sembrerà come se avessi totalizzato un 100 perfetto.
Quello che mi serve è che ogni round (ci sono 10) conti quanto è lontano da 100 il numero e conteggia quelli.
Example:
User A: 98 + 102 + 102 = 6 (something) Loser!
User B: 95 + 100 + 100 = 5 (something) Winner!
quello che avevo, ma è ovviamente imperfetto:
SELECT user_id, AVG(score) AS Average, (100-AVG(score)) AS Difference,
DATE(playtime) AS Playdate
FROM playtable
GROUP BY user_id, DATE(playtime)
ORDER BY Playdate DESC, user_id
Penso che dovresti avere una sottoquery che trova le differenze e poi la media. –
Probabilmente vorrai 'SUM (ABS (100-score)) AS TotalDifference' – Shmiddty
Grazie Shmiddty, ha fatto il trucco! –