Re: Obtener el más cercano

From: Daniel Hernández <dhernand(at)scio(dot)cl>
To: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: Obtener el más cercano
Date: 2008-06-26 19:45:44
Message-ID: 20080626154544.c5bc016b.dhernand@scio.cl
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Alvaro Herrera escribió:
> Usa un UNION, por ej.
>
> select * from (
> (select * from t where x < 0.4 order by x desc limit 1)
> union all
> (select * from t where x > 0.4 order by x limit 1)
> ) qqch
> order by abs(x - 0.4);
>
> O sea tomas el mas cercano hacia arriba y hacia abajo, y luego escoges
> uno de entre ellos.
>
> Nota: obviamente en este caso no es realmente necesario el UNION ALL
> puesto que los conjuntos son disjuntos, pero el plan es ligeramente
> mejor.

Gracias, pensé que necesitaba algo especial, esa solución es simple.

Saludos

--
Daniel Hernández
http://www.scio.cl

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Daniel Hernández 2008-06-26 19:53:24 Re: Obtener el más cercano
Previous Message Raúl Andrés Duque Murillo 2008-06-26 16:10:29 RAISE NOTICE en 8.3.3