Оператор TOP позволяет выбрать определенное количество строк из таблицы:
SELECT TOP 4 ProductName FROM Products
Дополнительный оператор PERCENT позволяет выбрать процентное количество строк из таблицы. Например, выберем 75% строк:
SELECT TOP 75 PERCENT ProductName FROM Products
Оператор TOP позволяет извлечь определенное количество строк, начиная с начала таблицы. Для извлечения набора строк из любого места, применяются операторы OFFSET и FETCH. Важно, что эти операторы применяются только в отсортированном наборе данных после выражения ORDER BY.
ORDER BY выражение OFFSET смещение_относительно_начала {ROW|ROWS} [FETCH {FIRST|NEXT} количество_извлекаемых_строк {ROW|ROWS} ONLY]
Например, выберем все строки, начиная с третьей:
SELECT * FROM Products ORDER BY Id OFFSET 2 ROWS;
Число после ключевого слова OFFSET указывает, сколько строк необходимо пропустить.
Теперь выберем только три строки, начиная с третьей:
SELECT * FROM Products ORDER BY Id OFFSET 2 ROWS FETCH NEXT 3 ROWS ONLY;
После оператора FETCH указывается ключевое слово FIRST или NEXT (какое именно в данном случае не имеет значения) и затем указывается количество строк, которое надо получить.
Данная комбинация операторов, как правило, используется для постраничной навигации, когда необходимо получить определенную страницу с данными.