Re: Finding nearest numeric value

Поиск
Список
Период
Сортировка
От Richard Huxton
Тема Re: Finding nearest numeric value
Дата
Msg-id 43035354.3040608@archonet.com
обсуждение исходный текст
Ответ на Finding nearest numeric value  (Poul Møller Hansen <freebsd@pbnet.dk>)
Ответы Re: Finding nearest numeric value  (Csaba Nagy <nagy@ecircle-ag.com>)
Re: Finding nearest numeric value  (Ron Mayer <rm_pg@cheapcomplexdevices.com>)
Re: Finding nearest numeric value  (Peter Fein <pfein@pobox.com>)
Список pgsql-general
Poul Møller Hansen wrote:
> Does anyone know how to find the row with the nearest numeric value, not
> necessarily an exact match ?

While the other answers all do their job, and in one go too, I'd be
surprised if you found anything faster than:

SELECT myval FROM mytable WHERE myval > 1234 ORDER BY myval LIMIT 1
UNION ALL
SELECT myval FROM mytable WHERE myval < 1234 ORDER BY myval DESC LIMIT 1

That gives you (up to) two values to look at, but should use any index
you have on myval.

You can always sort the results by abs(myval) then if you don't want to
handle two values in the application layer.

--
   Richard Huxton
   Archonet Ltd


В списке pgsql-general по дате отправления:

Предыдущее
От: "Jonathan Villa"
Дата:
Сообщение: Re: Adding contrib modules
Следующее
От: Sean Davis
Дата:
Сообщение: Re: Finding nearest numeric value