mysql和oracle的分页

Mysql分页采用limt关键字 

select * from t_order limit 5,10;     #返回第6-10行数据

select * from t_order limit 5;           #返回前5行

select * from t_order limit 0,5;        #返回前5行 

 

Mssql 2000分页采用top关键字(20005以上版本也支持关键字rownum) 

Select top 10 * from t_order where id notin (select id from t_order where id>5 ); //返回第6到15行数据  其中10表示取10记录 5表示从第5条记录开始取


Oracle分页
①采用rownum关键字(三层嵌套) 

--返回第5-15行数据

SELECT *

FROM(  SELECT A.*,ROWNUM  num

             FROM (SELECT * FROM  t_order)A  WHERE  ROWNUM<=15

)

WHERE num>=5; 

②采用row_number解析函数进行分页(效率更高) 

--返回第5-15行数据

SELECT xx.* FROM( SELECT t.*,row_number()over(ORDER BY o_id)AS num

                                     FROMt_order t

                               )xx

WHERE num BETWEEN 5 AND 15;    

解析函数能用格式  函数()over(pertion by 字段 order by 字段);  Pertion 按照某个字段分区  Order 按照某个字段排序  用分析函数 一万条后翻最后一页会很慢,使用ROWNUM 一万条之后每翻一页都会慢

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值