Skip site navigation (1) Skip section navigation (2)

Peripheral Links

Header And Logo

PostgreSQL
| The world's most advanced open source database.

Site Navigation

Search for
  Advanced Search

Re: Obtener el más cercano


  • From: "Jaime Casanova" <jcasanov(at)systemguards(dot)com(dot)ec>
  • To: "Alvaro Herrera" <alvherre(at)commandprompt(dot)com>
  • Cc: "Daniel Hernández" <dhernand(at)scio(dot)cl>, pgsql-es-ayuda(at)postgresql(dot)org
  • Subject: Re: Obtener el más cercano
  • Date: Wed, 30 Jul 2008 15:37:17 -0500
  • Message-id: <3073cc9b0807301337m1e87dac4rced7460328769eec(at)mail(dot)gmail(dot)com>

On Thu, Jun 26, 2008 at 7:27 AM, Alvaro Herrera
<alvherre(at)commandprompt(dot)com> wrote:
> Daniel Hernández escribió:
>> Hola, parece que los mails que he enviado no han llegado, no lo he
>> visto en los archivos, así que pregunto de nuevo.
>>
>> Tengo una tabla como esta:
>>
>> CREATE TABLE t (x double precision primary key, ...);
>>
>> y quiero obtener el elemento cuyo valor sea más cercano a un valor dado
>> x0.
>
> 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.
>

tenia este mail guardardo para chequearlo cuando tuviera tiempo...
que pasa si en el conjunto de valores esta incluido x?
no deberia uno de los select admitir tambien los iguales?

-- 
Atentamente,
Jaime Casanova
Soporte y capacitación de PostgreSQL
Guayaquil - Ecuador
Cel. (593) 87171157



Home | Main Index | Thread Index

Privacy Policy | PostgreSQL Archives hosted by Command Prompt, Inc. | Designed by tinysofa
Copyright © 1996 – 2008 PostgreSQL Global Development Group