Definición
Esta sentencia se usa para limitar a un número especifico de registros que se devuelven. Se suele usar en conjunción con la sentencia SELECT
Sintaxis
Hay que notar que cada motor de base de datos implementa esta cláusula de forma diferente
SQL Server / MS Access
SELECT TOP numero/porcentaje nombre_columna1, nombre_columna2, ...
FROM nombre_tabla
WHERE condicion;
Donde el porcentaje se escribe como numero PERCENT
MySQL
SELECT nombre_columna1, nombre_columna2, ...
FROM nombre_tabla
WHERE condicion
LIMIT numero;
Oracle 12
SELECT nombre_columna1, nombre_columna2, ...
FROM nombre_tabla
ORDER BY nombre_columna3, nombre_columna4, ...
FETCH FIRST numero ROWS ONLY;
El ORDER BY nos va a permitir que se ordene el resultado antes de conseguir los primeros
Versiones viejas de Oracle
SELECT nombre_columna1, nombre_columan2, ...
FROM nombre_tabla
WHERE ROWNUM <= numero;
Versiones viejas de Oracle (con ORDER BY)
Usando ORDER BY
SELECT *
FROM (SELECT nombre_columna1, nombre_columan2, ...
FROM nombre_tabla
ORDER BY nombre_columan3, nombre_columna4, ...)
WHERE ROWNUM <= numero;