Re: Usando GROUP BY

From: Silvio Quadri <silvioq(at)gmail(dot)com>
To: Emiliano Moscato <moski666(at)gmail(dot)com>
Cc: Raul Andres Duque <ra_duque(at)yahoo(dot)com(dot)mx>, pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: Usando GROUP BY
Date: 2009-03-05 12:51:07
Message-ID: 61dc71dc0903050451k18fc8c85o7f5814b8841ced4f@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

El día 5 de marzo de 2009 10:32, Emiliano Moscato <moski666(at)gmail(dot)com> escribió:
> 2009/3/4 Raul Andres Duque <ra_duque(at)yahoo(dot)com(dot)mx>:
>>
>> Lo más sencillo sería utilizar un select distinct on.
>> http://www.postgresql.org/docs/8.3/static/queries-select-lists.html
>>
>> Sería algo así como:
>>
>> SELECT DISTINCT ON (city) city, temp_lo, date
>> FROM weather
>> ORDER BY temp_lo
>>
>> De seguro esta es la forma más sencilla de hacerlo, tocaría evaluar si es
>> más o menos óptimo que utilizar joins con la misma tabla.
>
> Gracias Raúl!
>
> Quería estar seguro de que no tenía algo menos costoso y muy obvio a mano.
> Creo q me voy a quedar con esta solución.
> Saludos!
>
> Moski
> --
> TIP 1: para suscribirte y desuscribirte, visita http://archives.postgresql.org/pgsql-es-ayuda
>

Si querés usar ANSI SQL bien ortodoxo ...

SELECT city, temp_lo, date
FROM weather a
where temp_lo = ( select max( temp_lo )
from weather b
where b.city = a.city )

... debería funcionar (no lo he probado)

Eso sí, si tenés la misma temperatura máxima en la misma ciudad, en
distintos días, te devuelve más de un registro.l

--
Silvio Quadri

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Teofilo Oviedo 2009-03-05 13:11:20 [OT] Plan de migración de un sistema y BD
Previous Message Emiliano Moscato 2009-03-05 12:32:53 Re: Usando GROUP BY