Equivalente ao LIMIT no SQL Server

A Clausula LIMIT no Mysql tem como objetivo de retornar as linhas quantidade de linhas feita de um SELECT.

Exemplo :
SELECT col FROM table LIMIT 5
Ele é muito parecido com o TOP do SQL Server, só que com uma vantagem, a clausula LIMIT tem como você informar uma quantidade de linhas (posição inicial e final) de um SELECT

Exemplo :
SELECT col FROM table LIMIT 5,10 

No exemplo acima a clausula LIMIT retornará as linhas 5º até 10ª.

Infelizmente isso não é possível com a clausula TOP do SQL Server, mas segue uma dica que faz tornar isso possivel:


SELECT * FROM (
SELECT cols, indice = ROW_NUMBER() OVER (ORDER BY col)
) x 
WHERE indice BETWEEN 5 AND 10

A query acima, apenas cria uma coluna de índice no sub-select e no select principal faz o limite com BETWEEN.

Comentários

Postagens mais visitadas