主页 > 知识库 > 分页查询 效率最高

分页查询 效率最高

热门标签:地方门户网站 AI电销 呼叫中心市场需求 Linux服务器 服务外包 百度竞价排名 网站排名优化 铁路电话系统
复制代码 代码如下:

/*

日期:2009-03-19
功能:根据各种条件获取 游戏国家任务 列表数据
*/
Create procedure [dbo].[PrGs_Nation_Task_GetList]

@PageSize int = 100, -- 每页显示记录条数,默认为100
@PageIndex int = 1, -- 当前提取要显示的页码,默认为1,数据库根据PageSize,PageIndex 计算返回一页数据

@RetTotal int output, -- 记录总数
@RetCount int output, -- 返回记录数
@RetPageIndex int output, -- 输出当前页码
@ReturnDesc varchar(128) output -- 返回操作结果描述
as
begin

set nocount on
set xact_abort on

set @RetTotal = 0
set @RetCount = 0
set @RetPageIndex = @PageIndex




-- 多条件取值
declare @Err int -- 错误
declare @PageCount int -- 总页数
declare @BeginRID int -- 开始行 Rid
declare @MaxRow int -- 最后行

select @RetTotal = count(*)
from NationTask

select @Err = @@ERROR

if @Err > 0
begin
set @ReturnDesc = '提取国家任务总数失败!'
return -1
end

-- 如果无数据, 则返回空结果集
if @RetTotal = 0
begin
set @ReturnDesc = '当前条件无国家任务记录!'
return 1
end

-- 计算总页数
set @PageCount = @RetTotal / @PageSize

if @RetTotal % @PageSize > 0
begin
set @PageCount = @PageCount + 1
end

-- 超过总页数,则返回空结果集
if @PageIndex > @PageCount
begin
set @ReturnDesc = '当前条件无国家任务记录!'
return 1
end

-- 获取 要返回页面的 第一行纪录的 Rid
set @MaxRow = @PageSize * (@PageIndex - 1) + 1

set rowcount @MaxRow

select @BeginRID = Rid
from NationTask
order by Rid desc


-- 返回数据列表
set rowcount @PageSize

select Rid
,TaskName
,TaskTitle
,ImageID
,EffectID
,StartTime
from NationTask
where Rid = @BeginRID
order by Rid desc

set @RetCount = @@rowcount

-- 结束
set @ReturnDesc = '提取国家任务列表成功!'
return 1
end
您可能感兴趣的文章:
  • Mysql中分页查询的两个解决方法比较
  • 高效的SQLSERVER分页查询(推荐)
  • 真正高效的SQLSERVER分页查询(多种方案)
  • oracle,mysql,SqlServer三种数据库的分页查询的实例
  • 三种SQL分页查询的存储过程代码
  • php下巧用select语句实现mysql分页查询
  • 防SQL注入 生成参数化的通用分页查询语句
  • SQL Server 分页查询存储过程代码
  • 数据库分页查询方法
  • Access 模糊参数 分页查询
  • Ajax案例集下载:新增分页查询案例(包括《Ajax开发精要》中的两个综合案例) 下载
  • 高效的jsp分页查询
  • PHP 分页原理分析,大家可以看看
  • php 分页原理详解
  • 默默小谈PHPMYSQL分页原理及实现
  • mysql分页原理和高效率的mysql分页查询语句

标签:衡水 仙桃 湖南 湘潭 铜川 崇左 兰州 黄山

巨人网络通讯声明:本文标题《分页查询 效率最高》,本文关键词  ;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 收缩
    • 微信客服
    • 微信二维码
    • 电话咨询

    • 400-1100-266