sql 2005分页存储过程实例 0CSDN]

发布时间:2016-12-7 16:33:31 编辑:www.fx114.net 分享查询网我要评论
本篇文章主要介绍了"sql 2005分页存储过程实例 0CSDN]",主要涉及到sql 2005分页存储过程实例 0CSDN]方面的内容,对于sql 2005分页存储过程实例 0CSDN]感兴趣的同学可以参考一下。

/* -------------寒冰制作--------------- ------------------------------------ ------------ QQ:81868164  ---------- --- email:[email protected] -- --- 由sql 2000的分页存储过来改造 --- ----  加入sql 2005里新分页技术  ---- -- 如有更好的实现方法可以自行修改 -- ----------- 2006.7.11 -------------- - 版权共享 给我留言号记号就行 ^o^  - ------------------------------------ */     @tblName      varchar(255),       -- 表名      @fldName      varchar(255),       -- 字段名      @OrderType    bit = 0,            -- 设置排序类型, 非 0 值则降序      @IsCount      bit=0,              -- 设置排序类型, 非 0 值则降序      @strWhere     varchar(3000) ='',   -- 查询条件 (注意: 不要加 where)      @StartIndex   varchar(255),     @maxRows      varchar(255) AS  declare  @strSQL   varchar(3000)      -- 主语句  declare  @strCount   varchar(3000)    -- 返回数据的总条数语句  declare @strOrder varchar(3000)       -- 排序类型语句 if @OrderType != 0  begin      set @strOrder = ' order by ' + @fldName +' desc'  end  else  begin      set @strOrder = ' order by ' + @fldName +' asc'  end  set @strSQL ='select * from (select *, ROW_NUMBER() OVER ('+ @strOrder +') as Pos from ' + @tblName + ') as T where T.Pos > ('+ @StartIndex +') and T.Pos <'+ @maxRows set @strCount ='select count(*) as Total from  ' + @tblName + ' as count' if @strWhere !=''  begin    set @strSQL ='select * from (select *, ROW_NUMBER() OVER ('+ @strOrder +') as Pos from ' + @tblName + ' where ' + @strWhere + ') as T where  T.Pos > ('+ @StartIndex +') and  T.Pos <'+ @maxRows set @strCount ='select count(*) as Total from  ' + @tblName + ' as count  where ' + @strWhere end if @IsCount!=0   ----按需要返回数据的总条数 begin exec (@strCount) end exec (@strSQL)

老大,怎么没有人帮你顶呢.

不建议弄这么通用的存储过程 一是他的真正通用性 二是效率。 

[email protected],如何修改呢??

最重要是加查询条件麻烦?

傻...再加条件就行了..才注意看..呵呵

ROW_NUMBER() 好像它的效率有问题哦 还是select top的方法好

确实,通用的分页效率非常差。ROW_NUMBER() 是根据记录数线性增长的!

上一篇:如何删除数据而不删除表结构? 20CSDN]
下一篇:求 《SQL Server 2005:对决策支持系统的可伸缩性的改进》 的中文版白皮书 50linky520]

相关文章

相关评论