> --------------------------------------------------
> From: "Alejandro D. Burne" <[EMAIL PROTECTED]>
> Sent: Saturday, September 20, 2008 6:35 PM
> To: "PostgreEs" <[email protected]>
> Subject: [pgsql-es-ayuda] Obtener los 3 valores mas altos por grupo de una
> serie de registros
>
>> Alguien tiene idea de como armar una consulta sql (si es que se puede)
>> para obtener los 3 valores máximos y agrupandolos por una determinada
>> columna, por ejemplo teniendo los siguientes datos:
>>
>> grupo, valor
>> 1, 2
>> 1, 3
>> 1, 4
>> 1, 5
>> 2, 1
>> 2, 10
>> 2, 11
>> 2, 5
>>
>> me tendría que devolver
>> 1, 5
>> 1, 4
>> 1, 3
>> 2, 11
>> 2, 10
>> 2, 5
>>
>
> Pensaría que no se puede crear un agregado para este fin porque tendría que
> tener "memoria" para saber si el el 2do o 3ro máximo.
>
> Una opción sería hacer una funcion que recorra los datos pero si hay mucho
> datos sería tremendamente demorado.
>
Si el problema está en el volumen, no son muchos, estimo cerca del
millon y medio de registros, tampoco es poco ;+)
> Una preguntas para plantearte un query:
>
> "valor" puede estar repetido? si hay repetidos, deben considerarse?
>
Si valor puede estar repetido y considerarse, quería ver si por medio
de una consulta se podía armar. Voy a crear una función y listo.
> Atentamente,
>
> RAUL DUQUE
> Bogotá, Colombia
>
>
Gracias por tu tiempo y disposición
Saludos, Alejandro
--
TIP 6: ¿Has buscado en los archivos de nuestra lista de correo?
http://archives.postgresql.org/pgsql-es-ayuda