Riepilogo: in questo tutorial, imparerai come utilizzare le clausole SQL ServerOFFSET
FETCH
per limitare il numero di righe restituite da una query.
Le clausoleOFFSET
eFETCH
sono le opzioni della clausolaORDER BY
. Consentono di limitare il numero di righe da restituire da una query.,
di seguito viene illustrata La sintassi del tag OFFSET
e FETCH
clausole:
In questa sintassi:
OFFSET
clausola specifica il numero di righe da saltare prima di iniziare a restituire le righe della query.offset_row_count
può essere una costante, una variabile o un parametro maggiore o uguale a zero.- La clausola
FETCH
specifica il numero di righe da restituire dopo l’elaborazione della clausolaOFFSET
., Iloffset_row_count
può una costante, variabile o scalare maggiore o uguale a uno. - La clausola
OFFSET
è obbligatoria mentre la clausolaFETCH
è facoltativa. Inoltre,FIRST
eNEXT
sono sinonimi rispettivamente in modo da poterli usare in modo intercambiabile. Allo stesso modo, è possibile utilizzare ilFIRST
eNEXT
in modo intercambiabile.,
La seguente illustra il OFFSET
e FETCH
clausole:
si noti che è necessario utilizzare il tag OFFSET
e FETCH
clausole ORDER BY
clausola. Altrimenti, si otterrà un errore.
Le clausoleOFFSET
eFETCH
sono preferibili per implementare la soluzione di paging delle query rispetto alla clausolaTOP
.,
Le clausoleOFFSET
eFETCH
sono disponibili da SQL Server 2012 (11.x) e versioni successive e Database SQL di Azure.
SQL Server OFFSET and FETCH examples
Useremo la tabellaproducts
dal database di esempio per la dimostrazione.,ts and select the next 10 products, you use both OFFSET
and FETCH
clauses as follows:
Code language: SQL (Structured Query Language) (sql)
To get the top 10 most expensive products you use both OFFSET
and FETCH
clauses:
Code language: SQL (Structured Query Language) (sql)
In this example, the ORDER BY
clause sorts the products by their list prices in descending order., Quindi, la clausolaOFFSET
salta la riga zero e la clausolaFETCH
recupera i primi 10 prodotti dall’elenco.
In questo tutorial, hai imparato come utilizzare le clausole SQL ServerOFFSET
FETCH
che limitano il numero di righe restituite da una query.