Hola
En esta entrada voy ha explicar como hacer paginación en la tres bases de datos más usadas en el mundo, es decir las que he usado yo hasta hoy, lo primero es decir que es paginación.
Paginación
En esta entrada voy ha explicar como hacer paginación en la tres bases de datos más usadas en el mundo, es decir las que he usado yo hasta hoy, lo primero es decir que es paginación.
Paginación
La paginación consistente en traerse una cantidad de
registros y de ser necesarios más saltar a una página posterior.
Cuando usamos ORM, Hibernate, Mybatis, etc..., Lo mejor es hacer sql nativas que van a ir muy rápidas. Lo malo es que cada base de datos tiene un forma distintas de hacerlo, no hay una query común que sirva para todas las bases de datos.
Mysql
Mysql tiene la clasula limit y offset, limit le indica el número máximo de registro y offset indica la posición del registro que se va empezar.
select columna_1, columna_2 from tabla where columna_3 = 'algo' order by columna_1 limit 10 offset 0
Oracle
Oracle tiene la clasula rownum, rownum es una seudo columna que devuelme para cada registro del resultado de la consulta una poscion numerica.
SELECT * FROM ( SELECT a.*, rownum minimun FROM ( select columna_1, columna_2 from tabla where columna_3 = 'algo' order by columna_1 ) a WHERE rownum <= 10 )WHERE minimun > 0
SQLServer
SQLServer tiene la clasula top, top se emplea para obtener sólo una cantidad limitada de registros, los primeros n registros de una consulta.
select TOP 10 b.* FROM ( SELECT ROW_NUMBER() OVER ( order by columna_1 ) as row_number, * FROM ( select columna_1, columna_2 from tabla ) AS a where columna_3 = 'algo' ) AS b where b.row_number > 0
No hay comentarios:
Publicar un comentario