Paginacion con Stored Procedured SQL 2005

Publicado: agosto 4, 2009 en SQL
Etiquetas:, , , ,

en sql 2005 viene incorporada la funcion row_number() que trae el numero de registro de la tabla y de esa maneja nos facilita la tarea de paginacion

el siguiente stored procedured echo para ubigeos te muestra una manera sencilla de paginar con solo pasar como parametros la cantidad de registros por pagina y el numero

CREATE PROCEDURE Paginacion
@PageSize int,
@PageNumber int
AS
SELECT UbigeoID, DepName,ProvName
FROM (
SELECT
ID, DepName,ProvName,
ROW_NUMBER() OVER (ORDER BY DepName,ID ) AS RowNumber
FROM
dbo.tblUbigeo
) AS paginacionubigeo
WHERE RowNumber BETWEEN @PageSize * @PageNumber + 1 AND @PageSize * (@PageNumber + 1)

se obtiene resultados asi:

exec Paginacion 10,2

ID DepName ProvName

20 AMAZONAS CHACHAPOYAS
21 AMAZONAS CHACHAPOYAS
22 AMAZONAS BAGUA
23 AMAZONAS BAGUA
24 AMAZONAS BAGUA
25 AMAZONAS BAGUA
26 AMAZONAS BAGUA
27 AMAZONAS BONGARA
28 AMAZONAS BONGARA
29 AMAZONAS BONGARA

como vemos nos devuelve la segunda la tercera pagina de 10 registros
espero que les sirva

comentarios
  1. BGL dice:

    Perfecto! Aunque muy tarde arribé al blog.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s