首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > 其他数据库 >

数据库分页查询话语

2012-07-05 
数据库分页查询语句从数据库表中的第M条数据开始取N条记录:?1、Oracle?select*from(selectrownumrw, e1.*fr

数据库分页查询语句

从数据库表中的第M条数据开始取N条记录:

?

1、Oracle

?

select  *  from  (    select  rownum  rw, e1.*  from (select  *  from  emp  e1)  where rownum  <M+N)  e2  where  e2.rw >= N
??

?? 注:

?rownum是伪列,当查询语句每查询出一条语句后,oracle就会为这条记录分配一个rownum数值.

?? ? ? ? ? ? ?返回记录的rownum是从1开始的,因此第一条记录的rownum数值永远是1.因此当查询出第一条记录时

?? ? ? ? ? ? ?rownum是1,但是条件要求rownum>1,不符合条件,继续查询下一条,因为前面本来就没有符合条件的记录

?? ? ? ? ? ? ?因此当查询出下一条记录后 rownum仍然是1 ,如果循环 就不会产生结果.

?

2、MySql

?

?? ?Mysql是使用limit来进行分页查询的

?

?

select  *  from  emp  limit  M,N;

?

?

3、SQLServer

?

select ?top N* ?from (select ?top ?(M+N-1)* ?from ?emp);

热点排行