回顾mysql分页 用limit关键字 查询users表中前二条记录 select * from users limit 0,2或 select * from users limit 2;0表示第一条记录的索引号,索引号从0开始 2表示最多选取二个记录 查询出users前三条记录 select * from users limit 0,3或 select * from users limit 3查询出users第2条到第4条记录 select * from users limit 1,3;
|
回顾hibernate分页API Query.setFirstResult(0); Query.setMaxResult(3); |
什么是rownum,有何特点
1)rownum是oracle专用的关健字
2)rownum与表在一起,表亡它亡,表在它在
3)rownum在默认情况下,从表中是查不出来的
4)只有在select子句中,明确写出rownum才能显示出来
5)rownum是number类型,且唯一连续
6)rownum最小值是1,大值与你的记录条数相同
7)rownum也能参与关系运算
* rownum = 1 有值
* rownum < 5 有值
* rownum <=5 有值
* rownum > 2 无值
* rownum >=2 无值
* rownum <>2 有值 与 rownum < 2 相同
* rownum = 2 无值
8)基于rownum的特性,我们通常rownum只用于<或<=关系运算
显示emp表中3-8条记录(方式一:使用集合减运算)
select rownum "伪列",emp.* from emp where rownum<=8 minus select rownum,emp.* from emp where rownum<=2;显示emp表中2-8条记录(方式二:使用子查询,在from子句中使用,重点)
select xx.* from (select rownum ids,emp.* from emp where rownum<=8) xx where ids>=2;注意:在子查询中的别名,不可加""引号
显示emp表中5-9条记录
select yy.* from (select rownum ids,emp.* from emp where rownum<=9) yy where ids>=5;注意:在项目中,from后面可能有真实表名,也可能用子查询看作的表名,
同时真实表和子查询看作的表要做连接查询
另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。