Una pequeña consulta de un tema con SQL:
Esta es mi tabla:
CREATE TABLE `aportes` (
`id` int(11) NOT NULL auto_increment,
`idempleado` int(11) default NULL,
`idempresa` int(11) default NULL,
`ano` int(11) default NULL,
`mes` varchar(15) default NULL,
`importe` double default NULL,
`observaciones` text,
PRIMARY KEY (`id`)
)
En los datos pueden existir varios registros para un mismo idempleado, idempresa, en un mismo año y mes. Por ej:
id idempleado idempresa ano mes importe
4 10 23 2009 3 47
5 10 23 2009 4 41
6 10 23 2009 4 42
7 10 23 2009 5 45
Lo que necesito es obtener solamente el registro con el id mas alto para un idempleado,idempresa,ano,mes que coincidan
O sea de los datos anteriore querria obtener
id idempleado idempresa ano mes importe
4 10 23 2009 3 47
6 10 23 2009 4 42
7 10 23 2009 5 45
Probe con
select * from aportes where idempleado=10 group by mes
Pero asi me sale el id mas chico y me queda
id idempleado idempresa ano mes importe
4 10 23 2009 3 47
5 10 23 2009 4 41
7 10 23 2009 5 45
Agradezco ayuda! Se que se puede solucionar, pero con sql no soy muy bueno.
Saludos y Gracias