Mira, por lo poco que se entiende tu consulta, entraña ciertos riesgos de datos inconsistentes, a causa de posibles relaciones de cardinalidad múltiple.
Me explico.
Tu consulta es esta (aplicando alias para limpiar el codigo, te lo recomiendo):
Código MySQL:
Ver original re.result_points,
ri.rider_name,
gp.gp_name,
re.result_position,
ri.rider_number,
gp.gp_id,
SUM(re.result_points
) points
INNER JOIN tbl_rider ri
ON re.result_rider
= ri.rider_id
INNER JOIN tbl_category c
ON c.category_id
= ri.rider_category
Hay dos situaciones que pueden generar problemas:
1) Si al menos uno de los INNER JOIN se está aplicando a una relación 1:N o bien N:N, el valor de result_points se repetirá N veces y se producirán sumatorias incorrectas.
2) El LIMIT 5 se resuelve en MySQL devolviendo los 5 primeros valores simples encontrados, sin importar si corresponden realmente a la posición que ocupan. Es decir, puede dar resultados erroneos.
Creo que para que devuelva los resultados que esperas (y que pareciera posible), la consulta no es tan
simple como la has escrito. A mi entender, puede requerir cierta elaboración... pero no nos estás brindando los datos necesarios para poder aconsejarte.