Heim >Datenbank >MySQL-Tutorial >Oracle、MySQL和SqlServe分页查询的语句区别

Oracle、MySQL和SqlServe分页查询的语句区别

WBOY
WBOYOriginal
2016-06-07 14:51:061053Durchsuche

★先来定义分页语句将要用到的几个参数: int currentPage ; //当前页 intpageRecord ; //每页显示记录数 以之前的ADDRESSBOOK数据表为例(每页显示10条记录): 一、SqlServe 下载 数据库分页语句 Java代码 Stringsql= selecttop pageRecord *fromaddressbook

★先来定义分页语句将要用到的几个参数:

  • int currentPage ; //当前页
  • int pageRecord ; //每页显示记录数

以之前的ADDRESSBOOK数据表为例(每页显示10条记录):

 

一、SqlServe下载 数据库分页语句

Java代码  收藏代码
  1. String sql = "select top "+pageRecord +" * from addressbook where id not in (select top "+(currentPage-1)*pageRecord +" id from t_user)";  
  2. // (currentPage-1)*pageRecord : 是指从第几个记录开始  

第二页SQL演示:

select top 20 * from addressbook where id not in (select top 10 id from addressbook)

 

二、MySQL数据库分页语句

Java代码  收藏代码
  1. String sql = "select * from addressbook where limit "+(currentPage-1)*pageRecord +","+pageRecord +"";  
  2.            
  3. //select * from 表名 【条件】limit M,N;     
  4. //M为从第几个记录开始,比如每页显示3条记录,第二页就必须从第4条记录开始  
  5. //N每页读几个数据  

第二页SQL演示:

select * from addressbook where limit 10,10

 

三、Oracle数据库分页语句

Java代码  收藏代码
  1. String sqls = "select * from ( select rownum rn,t.* from addressbook t where rownum +currentPage*pageRecord+" ) where rownum > "+(currentPage -1)*pageRecord;  
  2.           

第二页SQL演示:

select * from ( select rownum rn,t.* from addressbook where rownum 10

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn