DB2分页查询和Oracle、SQL中的分页查询语句写法都不太一样,下面就为您介绍DB2分页查询和其他数据库中分页查询的区别,希望对您有所帮助。
Oracle分页查询写法:
一:Oracle
select * from (select rownum, name from table where rownum <= endIndex and rownum > startIndex)
二:DB2
DB2分页查询
- SELECT * FROM (Select 字段1,字段2,字段3,rownumber() over(ORDER BY 排序用的列名 ASC) AS rn from 表名) AS a1 WHERE a1.rn BETWEEN 10 AND 20
以上表示提取第10到20的纪录
select * from (select rownumber() over(order by id asc) as rowid from table where rowid <=endIndex and rowid > startIndex)
注:以上db2 sql 在 IBM DB2 UDB v8.2和 v9.7上测试通过,也可将rownumber()改为row_number(),验证通过。
三:MySQL:
select * from table limit start, pageNum