From: | "Raul Andres Duque" <ra_duque(at)yahoo(dot)com(dot)mx> |
---|---|
To: | Marcelo Fernández <fernandezm22(at)yahoo(dot)com(dot)ar> |
Cc: | <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | Re: [pgsql-es-ayuda] Seleccionar último registro entre un grupo |
Date: | 2008-08-14 16:42:41 |
Message-ID: | 004601c8fe2c$c54552d0$5800a8c0@amadeus.net.co |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
----- Original Message -----
From: "Marcelo Fernández" <fernandezm22(at)yahoo(dot)com(dot)ar>
To: "Raúl Andrés Duque Murillo" <ra_duque(at)yahoo(dot)com(dot)mx>
Sent: Thursday, August 14, 2008 6:52 AM
Subject: Re: [pgsql-es-ayuda] Seleccionar último registro entre un grupo
> Raúl Andrés Duque Murillo escribió:
>> Cordial saludos compañeros. Tengo el siguiente problema y aunque lo he
>> solucionado se me hace bastante pesado para la cantidad de registros que
>> tengo, por lo cual quisiera saber si a alguien se le ocurre una mejor
>> alternativa o algún artificio útil:
>> Tengo una tabla más o menos así:
>> id_parte anno mes valor
>> 1 2005 1 5
>> 1 2005 2 10
>> 2 2008 5 20
>> 2 2008 6 30
>> 3 2008 4 40
>> Lo que quiero es obtener el último valor (Anno/Mes) por cada parte. Para
>> el ejemplo: la salida sería:
>> id_parte anno mes valor
>> 1 2005 2 10
>> 2 2008 6 30
>> 3 2008 4 40 Por ahora lo que hago es algo de este
>> estilo:
>> SELECT tabla.id_parte, tabla.anno, tabla.mes, tabla.valor
>> FROM (
>> SELECT tabla.id_parte, MAX(tabla.anno*100 +
>> tabla.mes) AS AnnoMes
>> FROM tabla
>> GROUP BY tabla.id_parte
>> ) maxtabla INNER JOIN tabla ON tabla.id_parte =
>> maxtabla.id_parte AND AnnoMes = (tabla.anno*100 + tabla.mes)
>> Atentamente,
>> RAUL DUQUE
>> Bogotá, Colombia
>
> Hola Raul, creo que esto creo te puede servir:
>
> http://www.postgresonline.com/journal/index.php?/archives/68-More-Aggregate-Fun-Whos-on-First-and-Whos-on-Last.html#extended
>
Excelente Marcelo !!!!
Muchas Gracias.
RAUL DUQUE
Bogotá, Colombia
> Saludos,
> Marcelo
> --
> Marcelo F. Fernández
> Buenos Aires, Argentina
> Licenciado en Sistemas - CCNA
>
> E-Mail: fernandezm22(at)yahoo(dot)com(dot)ar
> Jabber ID: fernandezm22(at)jabber(dot)org
> Public Key ID: 5C990A6C 111C3661
> Blog: http://marcelosoft.blogspot.com
>
From | Date | Subject | |
---|---|---|---|
Next Message | Raul Andres Duque | 2008-08-14 17:11:41 | Re: [pgsql-es-ayuda] Seleccionar último registro entre un grupo |
Previous Message | Raul Andres Duque | 2008-08-14 16:33:39 | Re: [pgsql-es-ayuda] Seleccionar último registro entre un grupo |