Re: Стоимость запроса в EXPLAIN с LIMIT и OFFSET

Поиск
Список
Период
Сортировка
От Alexander M. Pravkin
Тема Re: Стоимость запроса в EXPLAIN с LIMIT и OFFSET
Дата
Msg-id 20111128074118.GG9642@dyatel.antar.bryansk.ru
обсуждение исходный текст
Ответ на Стоимость запроса в EXPLAIN с LIMIT и OFFSET  ("Dmitry E. Oboukhov" <unera@debian.org>)
Список pgsql-ru-general
Если проходиться по всей таблице, то нет смысла делать limit/offset
кроме как для экономии памяти. Тут может помочь cursor:

DECLARE my_cursor CURSOR FOR SELECT ...
FETCH NEXT 10 FROM my_cursor;
FETCH ...
...
CLOSE my_cursor;


On Mon, 2011-11-28 at 01:00 +0400, Dmitry E. Oboukhov wrote:
> SELECT
>     *
> FROM
>     table
> ORDER BY
>     column
> LIMIT
>     10
> OFFSET
>     100
>
> стоимость запроса растет вместе с ростом OFFSET.
>
>
> есть необходимость написать некую программу которая обойдет всю
> большую таблицу именно в порядке сортировки по конкретному столбику и
> пересчитает один из столбиков и сделает апдейт.
>
> индекс по column есть.
>
> если в начале работы основные затраты были на собственно расчеты. то
> ближе к середине в основном висит в БД тупо делая этот SELECT
> десятками секунд.
>
> Вопрос. как можно ускорить данный запрос?
> --
>
> . ''`.                               Dmitry E. Oboukhov
> : :’  :   email: unera@debian.org jabber://UNera@uvw.ru
> `. `~’              GPGKey: 1024D / F8E26537 2006-11-21
>   `- 1B23 D4F8 8EC0 D902 0555  E438 AB8C 00CF F8E2 6537



--
Alexander M. Pravkin

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

Предыдущее
От: Nikolay Samokhvalov
Дата:
Сообщение: Re: [pgsql-ru-general] Стоимость запроса в EXPLAIN с LIMIT и OFFSET
Следующее
От: "Dmitry E. Oboukhov"
Дата:
Сообщение: Добавить что-то в ENUM