Limite SQL

Limite SQL
Le clausole limite e offset in SQL consentono di limitare il numero di record che vengono restituiti da un'istruzione selezionata.

Questo articolo esaminerà l'utilizzo delle clausole limite e offset in SQL.

NOTA: È bene ricordare che il limite SQL e le clausole offset non fanno parte dello standard ANSI SQL. Tuttavia, è ampiamente adottato dai principali motori di database.

Sintassi

La sintassi per le clausole limite e offset è come mostrato di seguito:

SELEZIONARE
Col1, Col2, ... Coln
DA
Table_name
Ordine di column_name
Offset offset di conteggio limite;

Il valore limite determinerà il numero di righe/record restituiti dalla query.

Il valore offset consente di saltare righe specifiche prima di iniziare a recuperare i record.

NOTA: Il valore di offset non è richiesto. Se manca, la query prenderà i record dalla prima riga.

Esempio
Supponiamo di avere una tabella di esempio e dati come mostrato nella query seguente:

Crea dipendenti da tavolo (
Chiave primaria seriale ID,
full_name varchar (255),
Email Varchar (255),
Dipartimento Varchar (100),
Data start_date,
Bool attivo,
Categoria Varchar (50)
);
Inserisci i dipendenti (full_name, e -mail, dipartimento, start_date, attivo, categoria)
VALORI
("Meghan Edwards", "[email protected] ',' Game Development ',' 2016-06-22 ', True,' Dev-G1 '),
("Sam Davis", "[email protected] ',' Game Development ',' 2014-01-04 ', False,' Dev-G1 '),
('Taylor Miller', '[email protected] ',' Game Development ',' 2019-10-06 ', True,' Dev-G1 '),
('Wilson Smitty', '[email protected] ',' Database Developer ',' 2016-12-23 ', True,' Dev-DB1 '),
('Barbara Moore', '[email protected] "," sviluppatore di database "," 2015-12-23 ", true," dev-db1 "),
("Raj Chan", "[email protected] ',' Database Developer ',' 2017-12-23 ', false,' dev-db1 '),
("Susan Brown", "[email protected] ',' Devops Engineer ',' 2011-12-23 ', True,' Dev-Ops1 '),
("Marial Anderson", "[email protected] ',' Devops Engineer ',' 2015-12-23 ', True,' Dev-Ops1 '),
("Nancy Thomas", "[email protected] ',' Devops Engineer ',' 2014-12-23 ', false,' Dev-Ops1 ');

È possibile visualizzare tutti i record nella tabella utilizzando la query Seleziona come mostrato:

Seleziona * dai dipendenti;

Questo dovrebbe restituire tutte le righe come mostrato:

Supponiamo di volere i primi 3 record. Per questo, possiamo usare la clausola limite come:

Selezionare * dal limite dei dipendenti 3;

La query sopra dovrebbe restituire le prime tre file a partire da 1. L'output è come mostrato:

E se vuoi recuperare i seguenti tre elementi? Possiamo usare la clausola limite e offset come illustrato di seguito:

Selezionare * dal limite dei dipendenti 3 Offset 3;

La query sopra restituirà tre elementi a partire dalla quarta riga (inclusiva). Se hai un ID per le righe, l'output dovrebbe essere descrittivo come mostrato:

Terminato

Come illustrato in questo articolo, le clausole limite e offset sono una caratteristica di sicurezza che impedisce di recuperare migliaia, se non milioni, di record in una singola query. Pertanto, è bene utilizzare questa funzione per una semplice paginazione e una bella produzione.