Pull to refresh

Comments 9

LIMIT, FETCH FIRST, OFFSET

Вы располагаете информацией, что реализация указанных конструкций в чём-то различается? Потому как всё, что написано в документации, наводит на мысль, что это всё разные синтаксические формы одной и той же сущности. И ещё неизвестно, что из них чему есть синтаксический сахар.

Кстати, а почему тестируется связка OFFSET+FETCH, но не тестируется связка OFFSET+LIMIT? Нет, я понимаю, что четвёртый раз делать одно и то же странно, но чисто в порядке строгости эксперимента...

Тем более, что это "общепринятый" метод.

А где самая эффективная связка?

limit + where по колонкам из order

Самая неэффективная - row_number.

Разница между другими способами - в рамках статистической погрешности

Что касается получения первой страницы результатов, разница в скорости между методами LIMITFETCH FIRST и OFFSET практически незаметна — все они работают быстро и стабильно.

Выбор между этими тремя методами чаще всего зависит не от производительности, а от удобства реализации и необходимости поддержки перехода к следующим страницам данных.

Осталось прояснить два момента:

  1. Кто делает пагинацию через row_number?

  2. Чем с технической точки зрения остальные варианты различаются между собой?

  1. Кто делает пагинацию через row_number?

Теоретически - есть сценарий при котором row_number будет эффективнее.

Эксперимент, с целью проверки, запланирован на следующей неделе .

Добавьте фильтрацию, почти всегда при пагинации ставят динамические фильтры на колонках и сортировка также динамически выбирается из ui, если в where придет очень редкое значение то люкапы на весь объем вполне могут быть медленнее чем hash джойн.

В целом странное сравнение одной первой страницы и без фильтров.

Это как будто и так очевидно было изначально. Ведь row_number - это по сути отдельный запрос. И понятно, что он будет обрабатывать всю таблицу целиком

Такое ощущение, что основа статьи сгенерирована нейронкой с вкрапленим отсебятины. Уже столько раз эта тема обмусоливалась с пагинацией, а тут такое ощущение, что америка открывается.

Очередной раз к подобной статье задам вопрос: зачем вам глубокая пагинация на РСУБД?

Sign up to leave a comment.

Articles