oracle 使用rownum的三种分页方式
rownum是Oracle数据库中的一个特有关键字,返回的是一个数字代表记录的行号。
基础知识:rownum只能做<或者<=的条件查询,如果要rownum进行51到100这样的范围判断,需要先查询出每一行的rownum,再用那个序号做判断
获取51到100的数据
三种分页的写法:
1.使用minus,原理就是查询出前100行的数据减去查询出前50行的数据
select*fromDATA_TABLE_SQLwhererownum<=100 minus select*fromDATAT_ABLE_SQLwhererownum<=50
2.查询出所有数据的rownum,然后再选择50到100的数据(不推荐)
select*from(selectt.*,rownumnumfromDATA_TABLE_SQLt) wherenum<=100andnum>50
3.限定范围100条数据,并查询出这100条的rownum,然后再选择50到100的数据
select*from (selectt.*,rownumnumfromDATA_TABLE_SQLtwhererownum<=100) wherenum>50
下面给大家拓展两个分页查询语句:
1:单表查询
SELECT*FROM(SELECTt.*,ROWNUMrFROMTABLEtWHEREROWNUM<=pageNumber*pageSize)WHEREr>(pageNumber)*pageSize
2:两张表联查
SELECT*FROM(SELECTROWNUMRN,XX.*FROM(SELECT表名.字段名,表名.字段名,表名.字段名...FROMTABLE1t1,TABLE2t2WHEREt1.字段=t2.字段)XXWHEREROWNUM<=pageSize*pageNumber)WHERERN>(pageNumber-1)*pageSize
总结
以上所述是小编给大家介绍的oracle使用rownum的三种分页方式,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。