lunes, 21 de enero de 2013

Paginación de registros en Informix

Para poder realizar una paginación de una consulta en la base de datos Informix se requiere definir el valor inicial (skip) y la cantidad de registros (first):

En este ejemplo queremos obtener el resultado paginado de 50 registros a la vez, por lo tanto se esta definiendo el valor "first 50" y para la primera pagina se define el valor "skip 0".

Página 1
select skip 0 first 50 * from table1;

Página 2
select skip 51 first 50 * from table1;

Página 1
select skip 101 first 50 * from table1;

Como se aprecia, para la pagina 2 en adelante se multiplica la constante (50) por el valor de la pagina menos uno (Pagina Actual - 1) y por último se le suma 1.


Pagina Valor Skip Formula
1 0 (1-1)*50
2 51 (2-1)*50+1
3 101 (3-1)*50+1
4 151 (4-1)*50+1
5 201 (5-1)*50+1