惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

博客园_首页
J
Java Code Geeks
博客园 - 聂微东
量子位
C
Check Point Blog
T
The Blog of Author Tim Ferriss
T
Tailwind CSS Blog
G
Google Developers Blog
Google DeepMind News
Google DeepMind News
B
Blog
罗磊的独立博客
腾讯CDC
GbyAI
GbyAI
博客园 - 【当耐特】
A
About on SuperTechFans
M
MIT News - Artificial intelligence
U
Unit 42
D
Docker
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Y
Y Combinator Blog
大猫的无限游戏
大猫的无限游戏
小众软件
小众软件
S
SegmentFault 最新的问题
有赞技术团队
有赞技术团队

博客园 - Bruce Xiao

select 语句的执行顺序 时间复杂度计算方法 活动图与流程图的区别 ASP.NET 应用程序生命周期概述 Tab标签 - Bruce Xiao - 博客园 过滤数据集DataTable方法 - Bruce Xiao - 博客园 Abstract 与 Vitrual 用法 在同一个DataSet中添加多个DataTable - Bruce Xiao - 博客园 C#文件读写常用类介绍[转] 获取当月的天数 谈SQL SERVER数据库中的索引 C#读取二进制字节流 Oracle字符函数 分组合并字符串 分页控件 .net控件开发系列 事件处理机制 三个接口两个方法 xml讀寫實例 - Bruce Xiao - 博客园 对xml操作的主要方法[轉] - Bruce Xiao - 博客园 SQL2005 新功能:行列轉換
SQL2005 分頁存儲過程
Bruce Xiao · 2007-07-12 · via 博客园 - Bruce Xiao

CREATE PROCEDURE [dbo].[GetUsers]
    @RowIndex int,----當前指定的頁數
    @RecordCount int----每頁顯示的記錄數
AS
BEGIN
    SET NOCOUNT ON;

    With VUsers as (
        select *,row_number() over (order by UserID desc) as RowNum
        from MyUsers
)

    select * from VUsers
    where RowNum > @RowIndex and RowNum <= (@RowIndex+@RecordCount)    
END

set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
go
Alter PROCEDURE UP_GetRecordByPage  
   @tblName      varchar(255),       -- 表名 
   @keyName   varchar(255),  --主键
   @PageSize     int = 10,           -- 页尺寸
   @PageIndex    int = 0 ,         -- 页码  
   @strWhere     varchar(1000) = ''  -- 查询条件 (注意: 不要加 where)
AS 
declare @strSQL   varchar(6000)       -- 主语句
declare  @beginItemIndex  int    --开始项
declare  @endItemIndex  int     --结束项
set @beginItemIndex=@PageIndex*@PageSize
set @endItemIndex=@beginItemIndex+@PageSize
set @strSQl='Select top 10 * FROM
(
select *,
ROW_NUMBER() OVER( orDER BY '+@keyName+' DESC ) as rowNo 
from '
set @strSQL=@strSQL+@tblName+' where 1=1 '
 if @strWhere!=''
begin 
set @strSQL=@strSQL+@strWhere;
end
 
set @strSQL=@strSQL+') 
AS tabeTemp 
Where RowNo >='+cast (@beginItemIndex as varchar ) +' and RowNo <='+ cast (@endItemIndex as 

varchar)
print @strSQL
exec(@strSQL)
go