set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
go
--------分页存储过程
CREATE PROCEDURE [dbo].[UP_GetRecordByPage]
@tblName varchar(255), --table name
@fldName varchar(255), --key filed name
@PageSize int = 10, --page size
@PageIndex int = 1, --page index
@IsReCount bit = 0, --record count
@OrderType bit = 0, --asc:0 or desc:1
@strWhere varchar(1000) = '' --where
AS
declare @strSQL varchar(6000)
declare @strTmp varchar(1000)
declare @strOrder varchar(400)
if @OrderType != 0
begin
set @strTmp = '<(select min'
set @strOrder = ' order by [' + @fldName +'] desc'
end
else
begin
set @strTmp = '>(select max'
set @strOrder = ' order by [' + @fldName +'] asc'
end
set @strSQL = 'select top ' + str(@PageSize) + ' * from ['
+ @tblName + '] where [' + @fldName + ']' + @strTmp + '(['
+ @fldName + ']) from (select top ' + str((@PageIndex-1)*@PageSize) + ' ['
+ @fldName + '] from [' + @tblName + ']' + @strOrder + ') as tblTmp)'
+ @strOrder
if @strWhere != ''
set @strSQL = 'select top ' + str(@PageSize) + ' * from ['
+ @tblName + '] where [' + @fldName + ']' + @strTmp + '(['
+ @fldName + ']) from (select top ' + str((@PageIndex-1)*@PageSize) + ' ['
+ @fldName + '] from [' + @tblName + '] where ' + @strWhere + ' '
+ @strOrder + ') as tblTmp) and ' + @strWhere + ' ' + @strOrder
if @PageIndex = 1
begin
set @strTmp =''
if @strWhere != ''
set @strTmp = ' where ' + @strWhere
set @strSQL = 'select top ' + str(@PageSize) + ' * from ['
+ @tblName + ']' + @strTmp + ' ' + @strOrder
end
if @IsReCount != 0
set @strSQL = 'select count(*) as Total from [' + @tblName + ']'+' where ' + @strWhere
--print @strSql
exec (@strSQL)
分享到:
相关推荐
sql Server 通用分页存储过程 sql Server 通用分页存储过程 sql Server 通用分页存储过程 sql Server 通用分页存储过程
想在存储过程中分页的朋友可以使用, sqlserver存储过程万能分页
sqlserver+group by分组查询分页存储过程
通用的Sql Server分页程序,并且符合BootStrap Table 的调用标准.
sqlserver 分页调用的存储过程 t-sql 语句
千万级数据分页查询存储过程SQLServer 有实例
"ASP+SQL Server带条件查询的分页存储过程及其ASP调用实例" 本文主要介绍了如何使用ASP和SQL Server实现带条件查询的分页存储过程,并提供了实例代码和调用示例。该实例已经在IIS+ASP+SQL Server环境中进行了调试,...
sqlserver 支持多表联合查询分页存储过程 sqlserver 支持多表联合查询分页存储过程 sqlserver 支持多表联合查询分页存储过程 sqlserver 支持多表联合查询分页存储过程
SQL Server 存储过程及Oracle SQL语句分页
SQL server2008中通用分页存储过程,表名,每页长度,页码都是动态赋值。
1.只需要提供Sql语句和每页的记录数,页数就可以了 2,速度超快哟,100W记录1~3秒就分出来了 3,对于存储过程特别好用
分页SQLServer存储过程,里面还有调用示例
很好的通过存储过程实现分页的技术,很好的通过存储过程实现分页的技术,很好的通过存储过程实现分页的技术
SqlServer 分页 存储过程
SQL Server 2000下的通用分页存储过程.sql
sql server数据库中分页的存储过程,参数中比较灵活,如果首页传1,非首页传其他。
物有所值的东东 SQL SERVER 分页存储过程 SQL SERVER 分页存储过程 SQL SERVER 分页存储过程
sql server,分页存储,过程,演示 sql server,分页存储,过程,演示 sql server,分页存储,过程,演示 sql server,分页存储,过程,演示 sql server,分页存储,过程,演示 sql server,分页存储,过程,演示 ...
Sql Server BootStrap Table 分页 通用的Sql Server分页程序,并且符合BootStrap Table 的调用标准.