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

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

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

Комментарий

Подробности

Свойства страницы
Содержимое
... ... @@ -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,13 +6,30 @@
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" %)(((
10 -|(% style="width:282px" %)Страничная пагинация, offset|(% style="width:958px" %)
11 -|(% style="width:282px" %)Пагинация на ключах, keyset, seek|(% style="width:958px" %)
12 -|(% style="width:282px" %) |(% style="width:958px" %)
13 +|(% style="width:95px" %) |(% style="width:1390px" %)(((
14 +|(% style="width:254px" %)Страничная пагинация, offset|(% style="width:1118px" %)
15 +|(% style="width:254px" %)Пагинация на ключах, keyset, seek|(% style="width:1118px" %)(((
16 +|(% style="width:84px" %) |(% style="width:1015px" %)
17 +|(% style="width:84px" %)Пример 1|(% style="width:1015px" %){{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> то вся выборка пройдет через индекс (без дополнительного поиска).
13 13  )))
14 -|(% style="width:227px" %) |(% style="width:1257px" %)
15 15  
32 +
33 +)))
34 +|(% style="width:254px" %) |(% style="width:1118px" %)
35 +)))
36 +|(% style="width:95px" %) |(% style="width:1390px" %)
16 16  
17 17  ----
18 18