La clausula TOP
tiene algunas variantes para el filtrado,
como es PERCENT
, el cual te permite
mostrar un porcentaje del número de filas total.
select top (25) percent *
from tabla
También se tiene la opción WITH TIES , sentencia que sirve para filtrar cierto número de filas pero también
agrega filas que al momento de hacer la
comparación tuvieron el mismo valor que la última fila mostrada, esta sentencia
necesariamente se tiene que utilizar con
order by
select top (3) with ties columna1,columna2
from tabla
order by columna1
SQL Server también soporta
el estándar OFFSET –FETCH
En el cual la
clausula OFFSET sirve para indicar desde que fila se empezara a mostrar la información,
y FETCH indica cuantas filas serán mostradas.
OFFSET puede ser
utilizado sin la clausula FETCH, pero no viceversa
La clausura order by
tiene que estar explícitamente en la sentencia.
select *
from tabla
order by (select null )
OFFSET 2 ROWS
fetch next 5 rows only;