Reguły programisty

SQL Server

Opcja OFFSET-FETCH w SQL Server

Opis elastycznego rozszerzenia do klauzuli ORDER BY w SQL Server

SQL Serverjob interview70-761

Opcja OFFSET-FETCH filtruje pobierane wiersze. Zależy od klauzuli ORDER BY. Główny przeznaczeniem tej opcji jest zapewnienia mechanizmu stronicowania wyników.

Fukcjonalność OFFSET-FETCH zależy od określenia liczby wierszy do pominięcia i liczby wierdzy do wybrania. Innymi słowy, należy pokazać punkt startowy (offset) i podać liczbę wierszy do zwrócenia (fetch)

Rozpatrzmy następujące zapytanie:

którego rezultatem jest:

Price
1
2
3
3
4

OFFSET-FETCH może być użyte w ograniczonej wersji, tylko ze słowem kluczowym OFFSET:

dające w wyniku:

Price
3
3
4

Jak widać 2 pierwsze wiersze nie są brane pod uwagę oraz zwracane są pozostałe wiersze.

Użytając OFFSET z FETCH można określić liczbę wierszy do zwrócenia:

Teraz rezultatem jest:

Price
3
3

Aby umożliwić składnię podobną do języka naturalnego mużna używać ROW zamiast ROWS oraz FIRST zamiast NEXT.
Tutorial statistics