当前位置:  数据库>mysql

解析数据库分页的两种方法对比(row_number()over()和top的对比)

    来源: 互联网  发布时间:2014-10-10

    本文导语:  今天,老师带偶们复习了一下数据库中的分页,总体来说,今天感觉还不错,因为以前学的还没忘。好了,进入正题,首先,说说top的方法top方法其实就是将你要查的的页数的数据前得数据去掉 再取前几例: 代码如下: 一页3...

今天,老师带偶们复习了一下数据库中的分页,总体来说,今天感觉还不错,因为以前学的还没忘。好了,进入正题,
首先,说说top的方法
top方法其实就是将你要查的的页数的数据前得数据去掉 再取前几
例:
代码如下:

 一页3条数据 取第一页的数据
-- 第一页
       select top 3 * from T_news;
                       取第五页的数据
--第五页
       select  top 3 * from T_News where id not in (select top (3*4) id from T_News)      --关键就在于not  in上 靠他来去掉前几页的数据
                    如果想要自己设定每页几条数据和看第几页的话也行 就多加个存储过程
create proc usp_fenye @geshu int,@yeshu int
as
 begin
   select top (@geshu) * from T_News where id not in (select top (@geshu*(@yeshu-1)) id from T_News)
 end

然后,我们再说说ROW_NUMBER()over()的方法
这个其实就是又给数据表加了一个列在用来确定数据是第几条
例:
代码如下:

                       一页3条数据 取第一页的数据
   select * from (select *,ROW_NUMBER()over(order by id asc) as number from T_News ) as tb1
     where number between 1 and 3;
第五页的数据
 select * from (select *,ROW_NUMBER()over(order by id asc) as number from T_News ) as tb1
     where number between 3*4+1 and 3*5;
                       自己设定每页几条数据和看第几页
create proc usp_fenye @geshu int,@yeshu int
 as
   begin
     select * from (select *,ROW_NUMBER()over(order by id asc) as number from T_News ) as tb1
     where number between  @geshu*(@yeshu-1)+1 and @geshu*@yeshu;
   end

恩 就这样 这是我的理解 希望能给看得人带来帮助吧~

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 解析MYSQL 数据库导入SQL 文件出现乱码的问题
  • 解析mysql中如何获得数据库的大小
  • 请问如何解析这个文本啊?然后进行插入到数据库中?
  • 解析如何使用Zend Framework 连接数据库
  • 解析mysql数据库还原错误:(mysql Error Code: 1005 errno 121)
  • 深入解析Linux下MySQL数据库的备份与还原
  • Oracle数据库安装配置流程示例详细解析
  • java连接mysql数据库详细步骤解析
  • VC实现ODBC数据库操作实例解析
  • 解析PL/SQL Developer导入导出数据库的方法以及说明
  • Oracle数据库安全性管理基本措施实例解析
  • Java采用setAsciiStream方法检索数据库指定内容实例解析
  • 解析MySQL的information_schema数据库
  • 解析为何要关闭数据库连接,可不可以不关闭的问题详解
  • 解析如何查看Oracle数据库中某张表的字段个数
  • 解析MSSQL跨数据库查询的实现方法
  • 不使用MySQL数据库的五个给力理由解析
  • drupal7连接多个数据库问题解析
  • php 导入sql到mysql数据库方法解析
  • 解析MySQL数据库性能优化的六大技巧
  • windows下tinyxml.dll下载安装使用(c++解析XML库)
  • 请教redhat9下什么命令执行arp解析和逆向arp解析
  • 使用libpcap读取tcpdump抓取的文件并解析c代码实例
  • 如何用libxml2 默认解析器解析HTML文件
  • 基于Python的Html/xml解析库Beautiful Soup 4.2.1发布
  • linux能否成为动态域名解析客户端的动态域名解析服务器?
  • html中<radio>单选按钮控件标签用法解析及如何设置默认选中
  • 配置DNS服务器后,服务器可解析,客户端不能解析。求解
  • Python下Html/xml解析库Beautiful Soup快速入门教程
  • 为什么我在使用nslookup命令的时候,正向解析(域名-》ip)没有问题,反向解析(ip-》域名)怎么查不到呢?
  • 基于Python的html解析库:pyquery最新版主页及pyquery下载


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3