OFFSET FETCH Клауза
OFFSET и FETCH позволяют вам извлекать данные порциями. Они указывают на блок строк, который вы хотите получить с помощью одного запроса.
Значение offset_row_count или fetch_row_count может быть числом или литеральной константой. Вы можете опустить fetch_row_count; по умолчанию оно равно 1.
OFFSET указывает количество строк, которые следует пропустить перед тем, как начать возвращать строки из набора результатов запроса.
FETCH указывает максимальное количество строк, которое может быть в результате запроса.
Опция ONLY используется для возврата строк, которые непосредственно следуют за строками, пропущенными с помощью OFFSET. В этом случае FETCH является альтернативой клауза LIMIT. Например, следующий запрос
идентичен запросу
Опция WITH TIES используется для возврата любых дополнительных строк, которые находятся в ничьей позиции в наборе результатов в соответствии с клаузой ORDER BY. Например, если fetch_row_count установлен в 5, но две дополнительные строки соответствуют значениям столбцов ORDER BY в пятой строке, набор результатов будет содержать семь строк.
Согласно стандарту, клаузу OFFSET необходимо помещать перед клаузой FETCH, если обе присутствуют.
Примеры
Исходная таблица:
Использование опции ONLY:
Результат:
Использование опции WITH TIES:
Результат: