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

Obtener el más cercano

From: Daniel Hernández <dhernand(at)scio(dot)cl>
To: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Obtener el más cercano
Date: 2008-06-25 23:28:05
Message-ID: 20080625192805.dfa1c6a4.dhernand@scio.cl (view raw or flat)
Thread:
Lists: pgsql-es-ayuda
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. Lo que se me ocurre por el momento es:

SELECT * FROM t ORDER BY abs(x - x0) LIMIT 1;

Pero me tinca que podría estar calculando la función abs para todos los
registros de la tabla, lo que no aprovecharía el índice B-Tree en la
columna x.

¿Se les ocurre una idea mejor?

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

Responses

pgsql-es-ayuda by date

Next:From: Jaime CasanovaDate: 2008-06-26 04:26:42
Subject: Re: Obtener el más cercano
Previous:From: Jorge Vidal - DisytelDate: 2008-06-25 20:46:09
Subject: Cada cuanto reindexar la base de datos

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group