【发布时间】:2015-11-09 15:08:12
【问题描述】:
我想创建带有分页的存储过程以及前 100 个表的子集。例如,在具有超过 3,000,000 条记录的表(例如:employee 表)中,我想获取前 100,000 条记录并进行分页。我可以使用以下脚本进行分页,但我想获取前 100,000 条记录并进行分页。
DECLARE @currentPageNo int,@takeData int
SET @currentPageNo =1
SET @takeData = 10
SELECT DISTINCT emp.empid,emp.name,s.Salary,
FROM Employee emp
LEFT OUTER JOIN salary S ON emp.empid=S.empid
where emp.empid=12
ORDER BY emp.empid desc
OFFSET (@currentPageNo - 1) * @takeData ROWS
FETCH NEXT @takeData ROWS ONLY
我需要一些关于如何实现这一点的建议。我正在使用 SQL Server 2012。
【问题讨论】:
-
不是每个人都了解印度 (?) 编号系统,因此您应该编辑您的问题并将
lack和crore替换为正确的英文术语或数字。 -
这个问题没有多大意义。最缺的是什么?
-
@JulienVavasseur 它是十万或十万。它是印度编号系统的一部分。 en.wikipedia.org/wiki/Lakh
-
我首先尝试阅读并理解这个问题,因为它已被礼貌地回复给 Tab Alleman。 Jpw 建议用适当的解释或每个人都可以理解的术语来编辑问题。什么都没做。事实上,这意味着什么并不明显,应该在问题中正确解释。
标签: sql-server tsql stored-procedures