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

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

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

Комментарий

Подробности

Свойства страницы
Содержимое
... ... @@ -1,7 +1,6 @@
1 +|(% style="width:95px" %) |(% style="width:1390px" %)Пагинация, Paging, Pagination
1 1  |(% style="width:95px" %) |(% style="width:1390px" %)(((
2 -[[Индексы>>doc:Разработка.Базы данных.Механизмы.Индексы.WebHome]]
3 -
4 -[[План выполнения запроса>>doc:Разработка.Базы данных.SQL.Механизмы.План выполнения запроса.WebHome]]
3 +[[Индексы>>doc:Разработка.Базы данных.Механизмы.Индексы.WebHome]], [[План выполнения запроса>>doc:Разработка.Базы данных.SQL.Механизмы.План выполнения запроса.WebHome]]
5 5  )))
6 6  |(% style="width:95px" %) |(% style="width:1390px" %)(((
7 7  Почему нужна инструментальная поддержка пагинации на ключах
... ... @@ -11,27 +11,30 @@
11 11  [[https:~~/~~/habr.com/ru/articles/301044/>>https://habr.com/ru/articles/301044/]]
12 12  )))
13 13  |(% style="width:95px" %) |(% style="width:1390px" %)(((
14 -|(% style="width:282px" %)Страничная пагинация, offset|(% 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 *
13 +|(% style="width:254px" %)Страничная пагинация.
14 +Offset|(% style="width:1118px" %)
15 +|(% style="width:254px" %)Пагинация на ключах.
16 +Keyset, seek.|(% style="width:1118px" %)(((
17 +|(% style="width:84px" %) |(% style="width:1015px" %)
18 +|(% style="width:84px" %)Пример 1|(% style="width:1015px" %){{code language="sql"}}select *
18 18  from <testTable>
19 19  where
20 - <column1> > <value1>
21 - and <column2> > <value2>
21 + <column1> >= <value1>
22 + and <column_id> > <value_id>
22 22   and <column3> > <value3>
23 -order by <column1>, <column2>
24 +order by <column1>, <column_id>
24 24  limit 1000{{/code}}(((
25 25  
26 26  
27 -Исходные: есть таблица <testTable> со следующим индексом (<column1>, <column2>).
28 +Исходные: есть таблица <testTable> со следующим индексом (<column1>, <column_id>).
28 28  
29 -Выполнение: при таком запросе пагинация по столбцам <column1>, <column2> пройдет через индекс, а условие по столбцу <column3> будет выполняться через фильтрацию (перебор). Если убрать условие со столбцом <column3> то вся выборка пройдет через индекс (без дополнительного поиска).
30 +Выполнение: при таком запросе пагинация по столбцам <column1>, <column_id> пройдет через индекс, а условие по столбцу <column3> будет выполняться через фильтрацию (перебор): Index Cond + Filter.
31 +Если убрать условие со столбцом <column3> то вся выборка пройдет через индекс (без дополнительного поиска): Index Cond.
30 30  )))
31 31  
32 32  
33 33  )))
34 -|(% style="width:282px" %) |(% style="width:958px" %)
36 +|(% style="width:254px" %) |(% style="width:1118px" %)
35 35  )))
36 36  |(% style="width:95px" %) |(% style="width:1390px" %)
37 37