Ver Mensaje Individual
  #2 (permalink)  
Antiguo 30/03/2009, 14:10
jurena
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años, 1 mes
Puntos: 300
Respuesta: Resultado muy raro en consulta

Sí, con el group by sólo puedes traerte en la primera consulta el valor del MAX() y el campo por el que agrupas. Si quieres recupararlo todo, tienes que hacerlo así:


select e.id_ensayo, t1.niv, t1.maximo from ensayos e INNER JOIN (select nivel niv, max(aciertos) maximo from ensayos group by nivel)t1 ON e.nivel = t1.niv AND e.aciertos = t1.maximo ORDER BY e.id_ensayo, t1.maximo

Si dos id_ensayo pertenecientes al mismo nivel pudieran tener el mismo número de aciertos y fuera el máximo, te sacaría los dos (o los que fueran). No lo he probado.