如从表中取出4-6行的数据;sql如下:得到4-6行的数据select id,agefrom zystudentwhere id in(select id from zystudentwhere rownum<=6 and id not in(select id......
如从表中取出4-6行的数据;
sql如下:
得到4-6行的数据 select id,age from zystudent where id in( select id from zystudent where rownum<=6 and id not in( select id from zystudent where rownum<=3) );
最笨的方法,查询效率很低,不建议使用
select id,name,age from( select id,name,age,rownum r from zystudent) where r>=3 and r<=6;
将rownum定义成一个属性,然后调用,很不错的方法
select id,name,age from( select id,name,age,rownum r from zystudent where rownum<=6 order by id) where r>=4;
比上一个,更加优化了查询,根本不用遍历全表,就能实现
排序后再取出4-6; select id,name,age from( select id,name,age,rownum r from(select * from zystudent order by id desc) where rownum<=6) where r>=4;
应该将排序的后的表作为要查询的表
|