La clausola OFFSET e FETCH sono usate insieme alla clausola SELECT e ORDER BY per fornire un mezzo per recuperare una serie di record.

OFFSET

L’argomento OFFSET è usato per identificare il punto di partenza per recuperare le righe da un insieme di risultati. Fondamentalmente, esclude il primo set di record.
Nota:

  • OFFSET può essere usato solo con la clausola ORDER BY. Non può essere usato da solo.
  • Il valore di OFSET deve essere maggiore o uguale a zero. Non può essere negativo, altrimenti restituisce errore.

Sintassi:

SELECT column_name(s)FROM table_nameWHERE conditionORDER BY column_nameOFFSET rows_to_skip ROWS;

Esempi:
Considerate la seguente tabella dei dipendenti,

  • Stampa Fname, Lname di tutti i dipendenti tranne il dipendente con lo stipendio più basso.
    SELECT Fname, LnameFROM EmployeeORDER BY SalaryOFFSET 1 ROWS;

    Output:

FETCH

L’argomento FETCH è usato per restituire un insieme di righe. FETCH non può essere usato da solo, è usato in congiunzione con OFFSET.
Sintassi:

SELECT column_name(s)FROM table_nameORDER BY column_nameOFFSET rows_to_skipFETCH NEXT number_of_rows ROWS ONLY;

Esempio:

  • Stampa il Fname, Lname dalla terza alla sesta tupla della tabella Employee quando ordinata secondo Salary.
    SELECT Fname, LnameFROM EmployeeORDER BY SalaryOFFSET 2 ROWSFETCH NEXT 4 ROWS ONLY;

    Output:

  • Stampa le ultime 2 tuple della tabella Employee quando ordinate per Salary.
    SELECT Fname, LnameFROM EmployeeORDER BY SalaryOFFSET (SELECT COUNT(*) FROM EMPLOYEE) - 2 ROWSFETCH NEXT 2 ROWS;

    Output:

Punti importanti:

  1. La clausola OFSET è obbligatoria con FETCH. Non puoi mai usare ORDER BY … FETCH.
  2. TOP non può essere combinato con OFFSET e FETCH.
  3. L’espressione OFFSET/FETCH per il conteggio delle righe può essere solo qualsiasi espressione aritmetica, costante o parametro che restituirà un valore intero.
  4. ORDER BY è obbligatorio da usare con OFFSET e FETCH.
  5. Il valore OFFSET deve essere maggiore o uguale a zero. Non può essere negativo, altrimenti restituisce errore.

Questo articolo è stato contribuito da Anuj Chauhan. Se ti piace GeeksforGeeks e vuoi contribuire, puoi anche scrivere un articolo usando contribute.geeksforgeeks.org o inviare il tuo articolo a [email protected]. Vedi il tuo articolo apparire sulla pagina principale di GeeksforGeeks e aiuta altri Geeks.

admin

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.

lg