Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Paginación en sql server 2000

82 views
Skip to first unread message

Alhambra Eidos Development

unread,
Jun 30, 2009, 8:27:01 AM6/30/09
to

Hola a todos,

tengo un procedimiento almacenado con una query de tipo "select distinct
..." . Devuelve muchos datos, y por eso quería utilizar paginación de
resultados. Utilizo sql server 2000.

Cómo puedo hacerlo en sql server 2000 de una manera efectiva y que no
penalice mucho rendimiento?

Gracias y saludos.

Gustavo Larriera

unread,
Jun 30, 2009, 10:17:01 AM6/30/09
to

Google es su mejor amigo: Hay decenas de soluciones, le copio algunas.

Efficient and DYNAMIC Server-Side Paging with SQL Server 2000
http://weblogs.sqlteam.com/jeffs/archive/2004/03/22/sql-server-2000-paging.aspx

Pagination In SQL Server 2000
http://jrsteelheads.net/devgenuity/Articles/SQL/SQL2000Pagination.aspx

Pagination and Sorting in MS SQL Server 2000
http://www.codeproject.com/KB/database/PaginationSorting.aspx


--
Gustavo Larriera, Microsoft MVP
http://www.linkedin.com/in/gustavolarriera
--
Este mensaje se proporciona tal como es, sin garantías de ninguna clase.

Jorge Guillen

unread,
Jun 30, 2009, 10:16:26 AM6/30/09
to

Hola

Aca te paso un c�digo, espero te sirva:


use MiBase

declare @PageSize int
declare @PageNumber int

set @PageSize = 20 -- se muestra de 20 en 20
set @PageNumber = 1 --- 1 pagina inicial, 2 sgte pagina, etc..

declare @PageN int
IF @pageNumber <= 1 SET @PageN = 1
IF @pageNumber > 1 SET @PageN = @pageNumber-1

declare @tampag int
set @tampag=@pageSize*@PageN

declare @ultimo int
SET ROWCOUNT @tampag
SELECT @ultimo=Campo1 FROM Tabla ORDER BY 1

if @pageNumber=1
begin
SET ROWCOUNT @pageSize
SELECT Campo1,Campo2
FROM Tabla
ORDER BY 1
end
else
begin
SET ROWCOUNT @pageSize
SELECT Campo1,Campo2
FROM Tabla
WHERE Campo1 > @ultimo
ORDER BY 1
end

SET ROWCOUNT 0


Saludos
JORGE G.


"Alhambra Eidos Development"
<AlhambraEido...@discussions.microsoft.com> escribi� en el mensaje
news:A1C46ECD-C8B6-45DA...@microsoft.com...


> Hola a todos,
>
> tengo un procedimiento almacenado con una query de tipo "select distinct

> ..." . Devuelve muchos datos, y por eso quer�a utilizar paginaci�n de


> resultados. Utilizo sql server 2000.
>

> C�mo puedo hacerlo en sql server 2000 de una manera efectiva y que no

Salvador Ramos

unread,
Jun 30, 2009, 2:55:18 PM6/30/09
to

Tambi�n recomiendo este art�culo de SQL Server Magazine, escrito por el
maestro Itzik Ben-Gan
http://www.sqlmag.com/Articles/Index.cfm?ArticleID=44138&DisplayTab=Article

Pd. Si no tienes acceso al art�culo, si que puedes descargar el c�digo
mostrado en �l.

--
Un saludo
Salvador Ramos
Solid Quality Mentors (http://www.solidq.com)
---------------------------------------------------
www.helpdna.net (informaci�n sobre SQL Server y Microsoft .Net)
Visita mi nuevo blog: www.sqlserversi.com
---------------------------------------------------

"Gustavo Larriera" <Gustavo...@discussions.microsoft.com> escribi� en
el mensaje news:59E4F575-B2CE-48F6...@microsoft.com...


> Google es su mejor amigo: Hay decenas de soluciones, le copio algunas.
>
> Efficient and DYNAMIC Server-Side Paging with SQL Server 2000
> http://weblogs.sqlteam.com/jeffs/archive/2004/03/22/sql-server-2000-paging.aspx
>
> Pagination In SQL Server 2000
> http://jrsteelheads.net/devgenuity/Articles/SQL/SQL2000Pagination.aspx
>
> Pagination and Sorting in MS SQL Server 2000
> http://www.codeproject.com/KB/database/PaginationSorting.aspx
>
>
> --
> Gustavo Larriera, Microsoft MVP
> http://www.linkedin.com/in/gustavolarriera
> --

> Este mensaje se proporciona tal como es, sin garant�as de ninguna clase.


>
>
>
> "Alhambra Eidos Development" wrote:
>
>> Hola a todos,
>>
>> tengo un procedimiento almacenado con una query de tipo "select distinct

>> ..." . Devuelve muchos datos, y por eso quer�a utilizar paginaci�n de


>> resultados. Utilizo sql server 2000.
>>

>> C�mo puedo hacerlo en sql server 2000 de una manera efectiva y que no

0 new messages