El día 5 de marzo de 2009 10:32, Emiliano Moscato <[email protected]> escribió:
> 2009/3/4 Raul Andres Duque <[email protected]>:
>>
>> 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
--
TIP 8: explain analyze es tu amigo