[SQL Server] Paginação via SQL

Olá:

Dando prosseguimento a minha dúvida anterior, queria saber como posso fazer paginação nas consultas via SQL no SQL Server (via Java não é possível). Seria como usar a cláusula LIMIT nas consultas ao MySQL:

SELECT * FROM table LIMIT 5,10;  # Retrieve rows 6-15
SELECT * FROM table LIMIT 95,-1; # Retrieve rows 96-last.
SELECT * FROM table LIMIT 5;     # Retrieve first 5 rows

Grato,

É web seu sistema Rafael? Se for, eu posso te dar uma ajuda, eu fiz paginação no SQLServer mas via jsp, não usei o top nem o limit do sql

Sim, é para um sistema web. Mas não estou acessando o BD pelo JSP, mas sim por DAO.

Grato,

[quote=“Rafael Afonso”]Olá:

Dando prosseguimento a minha dúvida anterior, queria saber como posso fazer paginação nas consultas via SQL no SQL Server (via Java não é possível). Seria como usar a cláusula LIMIT nas consultas ao MySQL:

SELECT * FROM table LIMIT 5,10;  # Retrieve rows 6-15
SELECT * FROM table LIMIT 95,-1; # Retrieve rows 96-last.
SELECT * FROM table LIMIT 5;     # Retrieve first 5 rows

Grato,[/quote]

No SQLServer, para pegar, por exemplo, os 50 primeiros registros, faça:

select top 50 * from tabela where alguma_coisa=0

[quote=“Daniel Quirino Oliveira”]
No SQLServer, para pegar, por exemplo, os 50 primeiros registros, faça:

select top 50 * from tabela where alguma_coisa=0 [/quote]
Daniel:

Isso não basta para mim. Não vou pegar apenas os primeiros registros de uma consulta, mas o que estiver no meio e no final também.

Grato,

Que eu saiba o SqlServer não tem nada pareceido com o LIMIT. A menos que vc faça alguma coisa com StoredProcedures, vc vai ter que fazer a paginação na programação mesmo.

[]'s

[quote=“Rodrigo Carvalho Auler”]Que eu saiba o SqlServer não tem nada pareceido com o LIMIT. A menos que vc faça alguma coisa com StoredProcedures, vc vai ter que fazer a paginação na programação mesmo.

[]'s[/quote]

Eu acredito que não tem nada desse tipó também, por isso que eu digo: SQLServer Fede!

Segue,
http://www.joesack.com/SQLServerROWNUM.htm

Para constar: Conforme me foi sugerido em outro lugar, adotei a solução sugerida por esta página: Simulation de la fonction LIMIT de MySQL avec SQL Server, que envolve a cláusula TOP e sub-queries.

Grato,

olha estava com o mesmo problema … precisava fazer paginação no SQL SERVER, algo como o LIMIT do mysql ou o ROWNUM do oracle então achei as seguintes soluções:

http://www.linhadecodigo.com.br/Dica.aspx?id=1269
http://imasters.uol.com.br/artigo/4178/aspnet/paginando_dados_com_sqlserver_20002005/
http://www.devparadise.com/technoweb/code/sql/a453.php

ainda estou testando as dicas aqui! :smiley:
flw