O zaman şöyle bir sorgu senin işini görür diye düşünüyorum.
"SELECT SUM(puan) UserPuan, UserID FROM `table` GROUP BY UserID ORDER BY UserPuan DESC"
Yukarıdaki sorguda puan, table ve UserID field isimlerini kendinkinle değiştir,
SUM(puan) UserPuan buradaki UserPuan artık yeni puanlarının hesaplanmış field ismidir.
Sorgu dönüşü
UserPuan | UserID
5 | 3
2 | 1
gibi