Sorry pero la funcion que puse es para SQL server 2005 :S, como no decias la version de tu manejador de base de datos :S
Podrias hacerlo asi:
Código SQL:
Ver originalSELECT DISTINCT id, login, fecha
FROM #temp
GROUP BY id, login, fecha
ORDER BY fecha DESC
y nada mas presentar los primeros resultados......
La otra es que cambies tu estructura, en lugar de meter una evaluacion por cada usuario tener por ejemplo una tabla de evaluaciones nada mas con el id_usuario y fecha evaluacion, asi nada mas sacarias la ultima evaluacion que ha echo un usuario
Saludos!