Sql Server和Oracle的sql语句分页
发布时间:
浏览: 次 作者: Dede58
Sql Server和Oracle的sql语句分页
在sql2005以上的版本中可以用如下代码:
[sql] www.2cto.com
<a href="mailto:--@PageNo">--@PageNo</a> 是页码(要查询第几页),@pageSize是页容量(即每页显示多少条数据)
[sql]
select * from (
select row_number() over(order by id) rn,* from Test)
tb where rn >(@PageNo-1)*@pageSize and rn <=@PageNo*@pageSize
以上只是简单的分页,如果还有其他逻辑,比如排序 可以在over中加入排序的方法 test表 也可以换成子查询等其他逻辑
www.2cto.com
在oracle中,可以使用如下语句
[sql]
select t2.*
from (select rownum r,t1.* from test t1 where rownum<=:PageNo*:pageSize) t2
where t2.r>(:PageNo-1)*:pageSize
参数由@变成了‘:’意义都是相同的! 只需在查询时传入需要的参数即可.
在sql2005以上的版本中可以用如下代码:
[sql] www.2cto.com
<a href="mailto:--@PageNo">--@PageNo</a> 是页码(要查询第几页),@pageSize是页容量(即每页显示多少条数据)
[sql]
select * from (
select row_number() over(order by id) rn,* from Test)
tb where rn >(@PageNo-1)*@pageSize and rn <=@PageNo*@pageSize
以上只是简单的分页,如果还有其他逻辑,比如排序 可以在over中加入排序的方法 test表 也可以换成子查询等其他逻辑
www.2cto.com
在oracle中,可以使用如下语句
[sql]
select t2.*
from (select rownum r,t1.* from test t1 where rownum<=:PageNo*:pageSize) t2
where t2.r>(:PageNo-1)*:pageSize
参数由@变成了‘:’意义都是相同的! 只需在查询时传入需要的参数即可.
免责声明:本站所有文章和图片均来自用户分享和网络收集,文章和图片版权归原作者及原出处所有,仅供学习与参考,请勿用于商业用途,如果损害了您的权利,请联系网站客服处理。