Możesz nadać każdemu wynikowi losową liczbę i uporządkować wynik najpierw według punktów DESC, a następnie według wartości losowej:
SELECT *, RAND() random FROM users ORDER BY points DESC, random ASC
Prawdopodobnie istnieje również rozwiązanie z:
SELECT * FROM users ORDER BY points DESC, RAND()
Ale nie jestem tego pewien.