`

SQL Server 高效分页,没有比这更好的了!

阅读更多
-- @PageNo   : 第几页
-- @PageSize : 一页的记录数
-- 演示在表 dbo.HotTable 上进行分页的方法。其中 ID 为主键。

declare @PageNo   int
       ,@PageSize int

set @PageNo   = 1
set @PageSize = 10


if @PageNo = 1 begin
   select top(@PageSize) * from dbo.HotTable order by ID
end
else begin
   select top(@PageSize) *
     from dbo.HotTable
    where ID > (select max(ID)
                  from (select top (@PageNo * @PageSize) *
                          from dbo.HotTable
                         order by ID
                       ) T
               )
    order by ID
end
以上代码很简单,只是用于演示 SQL Server 分页的原理,你可以构造满足你需求的更复杂的分页存储过程。另外以上 SQL 分页代码在 SQL Server 2005 中运行通过。你可以修改下,用于 SQL Server 的其他版本。

分享到:
评论

相关推荐

    SQLServer分页.rar

    本资源"SQLServer分页.rar"包含了一个名为"SQL分页.txt"的文件,里面详细讲解了SQL Server中的分页实现方法。 首先,我们来理解SQL Server分页的基本概念。分页通常涉及到两个关键参数:`OFFSET`和`FETCH NEXT`。`...

    java 连接sqlserver数据库查询,并分页显示

    在Java编程中,连接SQL Server数据库并执行查询是常见的任务,尤其当涉及到大量数据时,分页显示就显得尤为重要。本篇文章将详细讲解如何使用Java连接SQL Server...希望这篇文章能帮助你更好地理解和实践这个过程。

    SqlServer数据库分页

    这在处理大型数据集时尤其有用,可以提高性能,减少网络传输,以及提供更好的用户体验。这篇博客将探讨SQL Server中实现分页的方法。 在SQL Server中,有两种主要的分页方法:`TOP`和`OFFSET-FETCH`,以及`ROW_...

    关于SQL Server SQL语句查询分页数据的解决方案

    针对这一需求,本文将详细介绍如何在SQL Server中实现有效的分页查询。 ### 方法1:使用NOT IN 这种方法通过先选择前300100条记录的序列号(这里假设`fldserialNo`是唯一标识每一行的字段),然后在外层查询中排除...

    sql server 分页大全

    总结,SQL Server 2000虽然没有内置的分页机制,但通过存储过程和TSQL语句的组合,依然可以实现高效的分页查询。理解并熟练运用这些技术,能帮助我们更好地管理和展示大量的数据库数据。在实际应用中,应根据具体...

    SQLServer数据库分页查询

    - 优点: IN 子句比 NOT IN 性能更好。 - 缺点: 需要额外排序。此方案平均查询 100 次所需时间为 20 秒。 ##### 方案五:使用 ROW_NUMBER() 函数 **SQL 语句**: ```sql SELECT w2.n, w1.* FROM ARTICLE w1, ( ...

    最简单的SQL Server数据库存储过程分页

    ### 最简单的SQL Server数据库存储过程分页 #### 知识点概述 在处理大量数据时,分页查询是一项常见的需求。传统的T-SQL分页方法可能会导致...希望本文能帮助读者更好地理解和应用SQL Server中的存储过程分页技术。

    sql分页 sqlserver中存储过程分页

    使用存储过程进行分页查询的好处包括:提高执行效率、增强代码复用性以及提供更好的安全性等。 #### 示例存储过程分析 下面将详细分析给定的存储过程 `[dbo].[sp_All_Pager]` 的实现原理及其各个参数的意义: 1. *...

    在SQL Server中通过SQL语句实现分页查询

    为了更好地演示如何在SQL Server中实现分页查询,我们首先需要创建一个测试表,并填充一定数量的数据。根据给定的部分内容,创建表`TestTable`的SQL语句如下: ```sql CREATE TABLE [TestTable]( [ID] [int] ...

    SqlServer数据库中的分页语句

    首先,我们要明白SQL Server分页查询的基本思想:一次查询只返回所需页面的数据,而不是一次性获取所有数据,这样可以减少网络传输量,减轻服务器压力,并提升查询速度。在SQL Server中,通常使用`TOP`关键字结合子...

    Sql server 通用分页方法

    对于SQL Server 2005及更高版本,可以利用其新增的`ROW_NUMBER()`窗口函数来实现更高效的分页查询。具体步骤如下: 1. **定义存储过程**:创建一个名为`GetRecordByPage`的存储过程,接收与方法一相同的参数。 2. *...

    Sql server 分页存储过程的性能对比

    在SQL Server数据库管理中,分页查询是一种常见的需求,特别是在数据量庞大的情况下,为了提高用户体验,需要快速加载部分数据而不是一次性加载所有数据。本篇资料主要探讨的是在SQL Server中,利用存储过程实现分页...

    Oracle,mysql,sqlserver等各种数据库的分页方法

    ### SQL Server分页方法 SQL Server中的分页实现方式相对复杂,主要通过子查询结合`TOP`关键字来完成。 #### 2. 使用`TOP`与子查询 这种方法利用了`TOP`关键字来限制结果集的数量,并通过子查询来排除前几条记录...

    sqlserver 存储过程分页(支持千万级)算法研究

    本文将深入探讨SQL Server存储过程中的高级分页技术,特别是针对千万级别数据量的场景,通过分析提供的代码示例,提炼出核心知识点,帮助读者理解和掌握高效分页查询的实现方法。 ### 1. 使用临时表和ROWCOUNT实现...

    SqlServer 分页存储过程以及代码调用

    在SQL Server中,分页查询是一项非常常见的任务,特别是在处理大量数据时,为了提高用户体验,我们需要将结果集分块展示,这就是分页的作用。本文将详细介绍如何使用存储过程实现SQL Server的分页,并演示如何在代码...

    SQL ASP.NET高性能分页

    SQL Server 提供了一个非常实用的功能——`SET ROWCOUNT`,可以通过限制结果集中的行数来帮助开发者实现高效的分页查询。 #### 二、关键技术点解析 本文主要介绍一种基于`SET ROWCOUNT`的高效分页方法,并通过具体...

    SQL Server 2005分页显示存储过程

    ### SQL Server 2005 分页显示存储过程 #### 背景介绍 在数据库应用开发中,分页查询是非常常见的需求之一。对于大型数据集来说,如果一次性加载所有数据到前端展示,不仅会增加服务器负担,还会影响用户体验。因此...

    struts+hibernate+sql server2005分页的小项目

    通过理解这些技术的集成和分页原理,开发者可以更好地应对大数据量的展示需求,提升Web应用的性能和用户体验。项目的源码分析有助于学习和掌握这些技术的实际应用,对于Java Web开发的学习和实践具有重要意义。

    SQL Server 分页方案比拼

    在IT领域,尤其是在数据库管理与查询优化方面,SQL Server分页技术是数据检索中的一个关键环节。分页技术主要用于在大型数据库中实现高效的数据展示,它允许用户在不加载整个结果集的情况下,按需获取数据的特定部分...

    SQL高效存储过程分页

    在SQL数据库管理中,存储过程(Stored Procedure)是一种预编译的SQL代码集合,它可以封装一系列的数据库操作,提供更好的性能、安全性和可维护性。当我们谈论“SQL高效存储过程分页”时,我们主要关注如何利用存储...

Global site tag (gtag.js) - Google Analytics