| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 674 人关注过本帖, 1 人收藏
标题:[分享]新手教程,存储过程实现分页的核心及解释!
取消只看楼主 加入收藏
pacocai
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:1583
专家分:0
注 册:2007-3-12
收藏(1)
 问题点数:0 回复次数:2 
[分享]新手教程,存储过程实现分页的核心及解释!

在应用ASP.NET的时候我们经常会使用到分页显示记录,事实上进行记录分页相当简单,其核心就是合理的利用SQL的查询语句,其语句如下:

select top [页页显示记录数] * from (select top [公式] * from [表名] order by id desc) order by id

公式:总记录数-页面显示总数*(当前页数-1)

解释:

在这里我们分析一下上面的语句,在这里先进行了第一次的查询。

select top [公式] * from [表名] order by id desc

这里是对整个表按ID字段进行降序排列,然后取出所需要的记录的总数。我们从公式可以得到,这里已经把多当前页以前的记录去除掉了,这里提取的是本页以后的所有的记录。比方是在第二页,那么这里所提取的记录就是第二页之后的所有的记录数。这里select top是反回所设定的前N条记录。

完成了第一次的查询以后再进行第二次的筛选。

select top [页面显示记录数] * from [第一次查询结果] order by id

在这里对第一次的结果再按ID字段进行升序排列,然后取出前10条记录。这样就能得到当前所需显示的记录了。(完)

这个算是一个新手教程吧,呵呵!事实上在个东东柠檬版主有说过,只不过一略而过,所以在这里特发贴子出来,与大家共享。如果以上解释有误的地方,还请各位能及时提醒,以便改正……不误导新手。

注:柠檬版主提到的分页的贴子http://bbs.bc-cn.net/viewthread.php?tid=126453&star=at

[此贴子已经被作者于2007-3-27 8:51:17编辑过]

搜索更多相关主题的帖子: 教程 核心 解释 分享 
2007-03-27 05:25
pacocai
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:1583
专家分:0
注 册:2007-3-12
收藏
得分:0 
晕,有上面这个语句就该可以做出来了吧????


浮生若梦天边月,醉死如酒水中星。红楼一梦千人叹,岂让万夫空做贱。博客:http://hi.baidu.com/rxvip
2007-03-27 21:24
pacocai
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:1583
专家分:0
注 册:2007-3-12
收藏
得分:0 

我做了一个实现翻页的源,你下去看下吧。

贴子地址:http://bbs.bc-cn.net/viewthread.php?tid=127355


浮生若梦天边月,醉死如酒水中星。红楼一梦千人叹,岂让万夫空做贱。博客:http://hi.baidu.com/rxvip
2007-03-28 09:58
快速回复:[分享]新手教程,存储过程实现分页的核心及解释!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018654 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved