Access - consulta sql MAX

 
Vista:

consulta sql MAX

Publicado por felix (15 intervenciones) el 21/09/2004 10:02:53
Muy buenas...
quisiera saber si se puede hacer una consulta que devuelva los registros (todos los campos) que cumplan la condicion de que uno de los campos sea el maximo... no se si me explico... suponed una tabla:
alumno, asignatura, nota
pues quiero una consulta que saque una tabla en la que solamente aparezca una vez cada alumno con la asignatura en la que saco la maxima nota...
por ej tenemos:
pedro, mates, 5
pedro, lengua, 6
pedro, ingles, 7
juan, lengua, 5
juan, lengua, 8
juan, mates, 2
ana, ingles, 4
ana, ingles, 5
ana, mates, 9
---------------------------
la consulta deberia devolver
pedro, ingles, 7
juan, lengua, 8
ana, ingles, 9

muchas gracias


Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:consulta sql MAX

Publicado por Pancho (149 intervenciones) el 21/09/2004 13:14:41
Primero crear una vista y llamarla MAX_MATERIA, con esta consulta buscamos las notas maximas por cada materia

SELECT MI_TABLA.MATERIA, Max(MI_TABLA.PUNTOS) AS PUNTOS_MAX
FROM MI_TABLA
GROUP BY MI_TABLA.MATERIA;

luego crear la vista que devuelva la consulta pedida, averiguamos a quien le pertenece la nota maxima por materia

SELECT MI_TABLA.NOMBRE, MAX_MATERIA.MATERIA, MI_TABLA.PUNTOS
FROM MI_TABLA INNER JOIN MAX_MATERIA ON (MI_TABLA.MATERIA = MAX_MATERIA.MATERIA) AND (MI_TABLA.PUNTOS = MAX_MATERIA.PUNTOS_MAX);

Saludos

Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar