通过存储过程进行分页查询的SQL示例
2014-09-18 13:43
676 查看
--创建人:zengfanlong --创建时间:2014-7-28 10:51:15 --说明:根据公司简写代码获取当前待同步的气瓶档案数据(分页获取) ALTER PROCEDURE [UP_GasBottles_GetSyncData_ByPage] ( @CompanyAbbrCode NVARCHAR(255) = '' , @LatastRowVersion_BigInt BIGINT , @CurrentMaxRowVersion_BigInt BIGINT , @StartPageIndex INT = 0 , @EndPageIndex INT = 0 , @TotalCount INT OUTPUT ) AS BEGIN --(1)、定义SQL查询 SELECT * INTO #tempTb FROM dbo.GasBottles AS gs WITH ( NOLOCK ) WHERE ISNULL(GasBottleNo, '') <> '' AND REPLACE(( SUBSTRING(gs.GasBottleNo, 1, 5) ), '-', '') = @companyAbbrCode AND ( CAST([RowVersion] AS BIGINT) > @LatastRowVersion_BigInt AND CAST([RowVersion] AS BIGINT) <= @CurrentMaxRowVersion_BigInt ) IF ( @StartPageIndex <= 0 AND @EndPageIndex <= 0 ) BEGIN SELECT * FROM #tempTb --返回总页数 SET @TotalCount = ( SELECT COUNT(1) FROM #tempTb ) END ELSE BEGIN --分页获取数据 SELECT ROW_NUMBER() OVER ( ORDER BY GETDATE() ) AS 'Row' , * INTO #tempAll FROM #tempTb SELECT * FROM #tempAll WHERE Row BETWEEN @StartPageIndex AND @EndPageIndex TRUNCATE TABLE #tempAll DROP TABLE #tempAll END --删除历史表 TRUNCATE TABLE #tempTb DROP TABLE #tempTb END GO
相关文章推荐
- 三种SQL分页查询的存储过程代码
- 一个查询数据库所有表的存储过程(允许按表名模糊查询一级按显示数量进行分页)
- SQL分页存储过程和C#中linq分页查询方法
- SQL2000系统表、存储过程、函数的功能介绍及应用2009年01月21日 星期三 11:38虽然使用系统存储过程、系统函数与信息架构视图已经可以为我们提供了相当丰富的元数据信息,但是对于某些特殊的元数据信息,我们仍然需要直接对系统表进行查询。因为SQL
- 客户端如何通过咏南中间件调用存储过程和数据分页查询和文件传输的演示
- SQL之通用查询分页存储过程
- 传入表或SQL语句的分页查询存储过程
- 通用的可带查询条件的SQL语句的分页存储过程(2)
- Yii1.1中通过Sql查询进行的分页操作方法
- SQL分页存储过程(不支持多表联合查询,不支持多字段排序)
- SQL之通用查询分页存储过程
- 三种SQL分页查询的存储过程代码
- SQL 分页查询 存储过程
- sqlserver2005利用临时表和@@RowCount提高分页查询存储过程性能示例分享
- 通用的可带查询条件的SQL语句的分页存储过程
- 三种SQL分页查询的存储过程
- Yii1.1中通过Sql查询进行的分页操作
- SQL Server 存储过程进行分页查询
- SQL大数据查询分页存储过程