Respuesta: Condición WHERE variable=(MAX(variable)) válida? No se pueden poner funciones MySQL en el WHERE. Tienes que pasarlo a la selección de campos, algo así:
"SELECT MAX(TEMPORADA) AS TEMP_MAX, TEMPORADA, TIPO, NOMBRE, PG, PE, PP, (PG+PE+PP) AS PJ, (3*PG+PE) AS PUNTOS, GF, GC, (GF-GC) AS DIF FROM EQUIPOS WHERE TEMPORADA=TEMP_MAX) ORDER BY PUNTOS DESC"
Un saludo.
Edito: ahora dudo si es verdad, después de lo que ha dicho @maycolalvarez. Si no, tendrás que separarlo en dos consultas, una para sacar el MAX y otra para hacer tu consulta actual. También lo puedes hacer en la misma, con subconsultas, algo así:
"SELECT TEMPORADA, TIPO, NOMBRE, PG, PE, PP, (PG+PE+PP) AS PJ, (3*PG+PE) AS PUNTOS, GF, GC, (GF-GC) AS DIF FROM EQUIPOS, (SELECT MAX(TEMPORADA) AS TEMP_MAX FROM EQUIPOS GROUP BY TEMPORADA) SUBSELECT WHERE EQUIPOS.TEMPORADA=SUBSELECT.TEMP_MAX) ORDER BY PUNTOS DESC"
Pruébalo bien, sé que se puede, pero no puedo ponerme a comprobarlo
__________________ ¿Alguna pregunta, duda, acotación, nota, cuestión, reparo, comentario, demanda, crítica, interpretación, objeción, interrogante, discrepancia, observación, réplica, disquisición, apostilla o exégesis?
Última edición por vgonga1986; 06/08/2011 a las 10:54
Razón: Ahora dudo si es verdad
|