[转][SQL Server]分页查询
方式一:使用 OFFSET/FETCH 子句(SQL Server 2012 及以上版本支持)
-- 假设 PageSize 表示每页的记录数,pageNumber 表示当前页码(从1开始) DECLARE @PageSize INT = 10; DECLARE @pageNumber INT = 3; SELECT * FROM table1 ORDER BY Id -- 或者按其他字段排序 OFFSET (@pageNumber - 1) * @PageSize ROWS FETCH NEXT @PageSize ROWS ONLY;
方式二:使用 ROW_NUMBER() 函数
WITH CTE AS ( SELECT *, ROW_NUMBER() OVER (ORDER BY Id) AS RowNum FROM table1 ) SELECT * FROM CTE WHERE RowNum BETWEEN (@pageNumber - 1) * @PageSize + 1 AND @pageNumber * @PageSize;
这两种方式都可以实现对 table1 表的分页查询,不过 OFFSET/FETCH 的方式更为简洁直观。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
2016-03-11 [转][ASP.net]后台页面刷新