Изменения документа Пагинация | Paging

Редактировал(а) Alexandr Fokin 2024/03/20 11:00

<
От версии < 5.5 >
отредактировано Alexandr Fokin
на 2024/01/16 12:28
К версии < 5.6 >
отредактировано Alexandr Fokin
на 2024/01/16 22:45
>
Изменить комментарий: К данной версии нет комментариев

Комментарий

Подробности

Свойства страницы
Содержимое
... ... @@ -1,5 +1,9 @@
1 -|(% style="width:227px" %) |(% style="width:1257px" %)[[Индексы>>doc:Разработка.Базы данных.Механизмы.Индексы.WebHome]]
2 -|(% style="width:227px" %) |(% style="width:1257px" %)(((
1 +|(% style="width:95px" %) |(% style="width:1390px" %)(((
2 +[[Индексы>>doc:Разработка.Базы данных.Механизмы.Индексы.WebHome]]
3 +
4 +[[План выполнения запроса>>doc:Разработка.Базы данных.SQL.Механизмы.План выполнения запроса.WebHome]]
5 +)))
6 +|(% style="width:95px" %) |(% style="width:1390px" %)(((
3 3  Почему нужна инструментальная поддержка пагинации на ключах
4 4  [[https:~~/~~/habr.com/ru/companies/tinkoff/articles/485036/>>url:https://habr.com/ru/companies/tinkoff/articles/485036/]]
5 5  
... ... @@ -6,14 +6,31 @@
6 6  Пять способов пагинации в [[Postgres>>doc:Разработка.Базы данных.SQL.PostgreSQL.WebHome]], от базовых до диковинных
7 7  [[https:~~/~~/habr.com/ru/articles/301044/>>https://habr.com/ru/articles/301044/]]
8 8  )))
9 -|(% style="width:227px" %) |(% style="width:1257px" %)(((
13 +|(% style="width:95px" %) |(% style="width:1390px" %)(((
10 10  |(% style="width:282px" %)Страничная пагинация, offset|(% style="width:958px" %)
11 -|(% style="width:282px" %)Пагинация на ключах, keyset, seek|(% style="width:958px" %)
15 +|(% style="width:282px" %)Пагинация на ключах, keyset, seek|(% style="width:958px" %)(((
16 +|(% style="width:130px" %) |(% style="width:809px" %)
17 +|(% style="width:130px" %)Пример 1|(% style="width:809px" %){{code language="sql"}}select *
18 +from <testTable>
19 +where
20 + <column1> > <value1>
21 + and <column2> > <value2>
22 + and <column3> > <value3>
23 +order by <column1>, <column2>
24 +limit 1000{{/code}}(((
25 +
26 +
27 +Исходные: есть таблица <testTable> со следующим индексом (<column1>, <column2>).
28 +
29 +Выполнение: при таком запросе пагинация по столбцам <column1>, <column2> пройдет через индекс, а условие по столбцу <column3> будет выполняться через фильтрацию (перебор). Если убрать условие со столбцом <column3> то вся выборка пройдет через индекс (без дополнительного поиска).
30 +)))
31 +
32 +
33 +)))
12 12  |(% style="width:282px" %) |(% style="width:958px" %)
13 13  )))
14 -|(% style="width:227px" %) |(% style="width:1257px" %)
36 +|(% style="width:95px" %) |(% style="width:1390px" %)
15 15  
16 -
17 17  ----
18 18  
19 19  ==== Внутренние ссылки: ====