Изменения документа Пагинация | Paging
Редактировал(а) Alexandr Fokin 2024/03/20 11:00
<
>
отредактировано Alexandr Fokin
на 2024/01/16 12:28
на 2024/01/16 12:28
отредактировано Alexandr Fokin
на 2024/01/16 22:45
на 2024/01/16 22:45
Изменить комментарий:
К данной версии нет комментариев
Комментарий
-
Свойства страницы (1 изменено, 0 добавлено, 0 удалено)
Подробности
- Свойства страницы
-
- Содержимое
-
... ... @@ -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 ==== Внутренние ссылки: ====