和你普通语句一样在这里写第几行到第几行:select * from (select rownum id,* from tbname) where id>10 and id < 21
select * from (select rownum id,* from tbname) where id>10 and id < 21 怎么实现分页
或:select * from (select rownum 行号,* from 你的表名) where 行号 between 10 and 20
这不是写了吗? 你第一页select * from (select rownum 行号,* from 你的表名) where 行号 between 0 and 10第二页:select * from (select rownum 行号,* from 你的表名) where 行号 between 11 and 20......你不会说这样也不行吧。
你去asp版找,很好找,把里面的sql语句换一下就行了 分主要使用recordset的那几个属性
这样是效率最好的方法: select * from (select rownum 行号,* from 你的表名 where rownum<21) where 行号 > 10
在oracle数据库中查询结果的行号使用伪列ROWNUM表示(从1开始)。例如select * from employee where rownum<10 返回前10条记录。但因为rownum是在查询之后排序之前赋值的,所以查询employee按birthday排序的第100到120条记录应该这么写: select * from ( select my_table.*, rownum as my_rownum from ( select name, birthday from employee order by birthday ) my_table where rownum <120 ) where my_rownum>=100
行号的应用:rownum.简单的查询: (前10条) select * from table1 where rownum <=10
怎么实现分页
你第一页select * from (select rownum 行号,* from 你的表名) where 行号 between 0 and 10第二页:select * from (select rownum 行号,* from 你的表名) where 行号 between 11 and 20......你不会说这样也不行吧。
分主要使用recordset的那几个属性
select * from (select rownum 行号,* from 你的表名 where rownum<21) where 行号 > 10
select * from table1 where rownum <=10