Frase SQL TOP

Clausola TOP

La clausola TOP viene utilizzata per specificare il numero di record da restituire.

Per tabelle grandi con migliaia di record, la clausola TOP è molto utile.

Nota:Non tutti i sistemi di database supportano la clausola TOP.

Sintassi di SQL Server:

SELECT TOP numero|percentuale nome_colonna(e)
FROM nome_tabella

SQL SELECT TOP in MySQL e Oracle è equivalente

Sintassi MySQL

SELECT nome_colonna(e)
FROM nome_tabella
LIMIT numero

Esempio

SELECT *
FROM Persons
LIMIT 5

Sintassi Oracle

SELECT nome_colonna(e)
FROM nome_tabella
WHERE ROWNUM <= numero

Esempio

SELECT *
FROM Persons
WHERE ROWNUM <= 5

Tabella originale (usata negli esempi):

Tabella Persons:

Id Cognome Nome Indirizzo City
1 Adams John Oxford Street London
2 Bush George Fifth Avenue New York
3 Carter Thomas Changan Street Beijing
4 Obama Barack Pennsylvania Avenue Washington

Esempio di SQL TOP

Ora, desideriamo selezionare le prime due registrazioni dalla tabella "Persons".

Possiamo usare la seguente espressione SELECT:

SELECT TOP 2 * FROM Persons

Risultato:

Id Cognome Nome Indirizzo City
1 Adams John Oxford Street London
2 Bush George Fifth Avenue New York

Esempio di SQL TOP PERCENT

Ora, desideriamo selezionare il 50% delle registrazioni dalla tabella "Persons".

Possiamo usare la seguente espressione SELECT:

SELECT TOP 50 PERCENT * FROM Persons

Risultato:

Id Cognome Nome Indirizzo City
1 Adams John Oxford Street London
2 Bush George Fifth Avenue New York