`
可执行
  • 浏览: 17499 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

SQL三种分页方案

阅读更多
分页方法:
SQL法、储过程法、游标法。
游标耗资、效率低;
存储过程不错,因为存储过程是经过预编译的效率高、灵活。


这里介绍SQL分页法:

方法1:
适用于 SQL Server 2000/2005
SELECT TOP 页大小 *
FROM table1
WHERE id NOT IN
          (
          SELECT TOP 页大小*(页数-1) id FROM table1 ORDER BY id
          )
ORDER BY id

方法2:
适用于 SQL Server 2000/2005
SELECT TOP 页大小 *
FROM table1
WHERE id >
          (
          SELECT ISNULL(MAX(id),0)
          FROM
                (
                SELECT TOP 页大小*(页数-1) id FROM table1 ORDER BY id
                ) A
          )
ORDER BY id

方法3:
适用于 SQL Server 2005
SELECT TOP 页大小 *
FROM
        (
        SELECT ROW_NUMBER() OVER (ORDER BY id) AS RowNumber,* FROM table1
        ) A
WHERE RowNumber > 页大小*(页数-1)


页大小:每页的行数;
页数:第几页;
使用时,请把“页大小”和“页大小*(页数-1)”替换成数字。



其它的方案:如果没有主键,可以用临时表,也可以用方案三做,但是效率会低。
加上主键和索引,查询效率会提高。

通过SQL查询分析器,显示:
方案二:(利用ID大于多少和SELECT TOP分页)效率最高,需拼接SQL语句
方案一:(利用Not In和SELECT TOP分页)   效率次之,需拼接SQL语句
方案三:(利用SQL的游标存储过程分页)    效率最差,但是最为通用
分享到:
评论

相关推荐

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

    关于SQL Server SQL语句查询分页数据的解决方案 在日常工作中,我们经常需要处理大量数据,并从中获取特定页面的数据。特别是在Web应用开发中,为了提高用户体验,通常会将数据进行分页显示。针对这一需求,本文将...

    SQL Server 分页方案比拼

    本文将深入探讨SQL Server中几种常见的分页方案,并对它们进行比较分析。 ### 1. 基于子查询的分页方法 一种常用的分页策略是通过子查询来实现。具体做法是在外层查询中使用`TOP`关键字选取一定数量的记录,而在内...

    SQL Server数据库三种分页方案详尽分析

    **分页方案三:游标存储过程** 此方案使用SQL的游标来实现分页,通过创建一个存储过程来执行。这种方法适用于没有主键或无法使用其他方法的情况。然而,游标通常被认为是性能较差的选择,因为它们逐行处理数据,不...

    SQL 三种 分页 语句

    以上介绍了四种不同的SQL分页查询方法。每种方法都有其特点,在实际应用中应根据具体情况选择最适合的方案。对于小到中等规模的数据集,方法四可能是最简便的选择;而对于大规模数据集,则应考虑使用方法二或方法三...

    用SQL实现分页的三种方法

    ### 用SQL实现分页的三...- **分页方案三**(利用SQL的游标存储过程分页)虽然效率最低,但适用范围最广。 在实际应用中,应根据具体情况选择合适的分页策略,同时考虑表结构、数据分布等因素,以达到最佳的性能表现。

    SQL中分页解决方案

    本篇文章将详细介绍在三种主流数据库系统:Oracle、SQL Server 和 MySQL 中如何实现分页功能。 #### 一、SQL Server 分页方案 **1.1 使用 `TOP` 关键字** 在 SQL Server 中,`TOP` 关键字常用于限制返回的结果集...

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

    通过对上述三种分页方案的分析可以看出,在实际应用中应根据具体情况选择合适的分页策略。如果表中有递增的唯一标识符(如ID),那么推荐使用方案二,因为它在大多数情况下提供更好的性能。若没有这样的唯一标识符,...

    LINQ To SQL实现分页效果源码

    总结来说,LINQ to SQL的分页功能结合了强大的查询表达能力和数据库操作的便利性,为.NET开发者提供了高效的数据访问解决方案。通过理解和实践这些步骤,你可以在你的应用程序中实现高效的分页功能。

    SQLServer数据库分页查询

    ##### 方案三:使用 TOP + JOIN 实现 **SQL 语句**: ```sql SELECT * FROM ARTICLE w1, ( SELECT TOP 30 ID FROM ( SELECT TOP 50030 ID, YEAR FROM ARTICLE ORDER BY YEAR DESC, ID DESC ) w ORDER BY w.YEAR ...

    利用SQL游标存储过程分页方案

    利用SQL游标存储过程分页方案,以前用过,应该还行

    SQL server 分页查询

    SQL Server的分页查询功能为开发者提供了灵活多样的解决方案,无论是基于`ROW_NUMBER()`函数的现代方法,还是传统的子查询技巧,都能满足不同场景下的需求。然而,随着数据量的增长,选择合适的分页策略,以及持续...

    常用sql分页解决方案

    本资源“常用sql分页解决方案”提供了三种不同的分页方法,旨在帮助开发者更高效地实现数据检索。 一、LIMIT与OFFSET方法(MySQL) 在MySQL中,最常用的分页查询方式是使用`LIMIT`和`OFFSET`关键字。`LIMIT`用于...

    SQL分页语句的三种方法的比较

    ### SQL分页语句的三种方法的比较 在数据库应用中,分页是常见的需求之一。对于大型数据集,为了提高用户体验以及减轻服务器负担,通常会采用分页的方式来展示数据。SQL提供了多种实现分页的方法,本文将详细介绍并...

    SQL Server 存储过程的分页方案比拼

    ### 分页方案三:游标存储过程 游标存储过程适用于更复杂的分页需求,尤其是当没有明确的主键或者排序条件时。它通过创建一个游标来遍历数据,逐页读取。虽然这种方式提供了更大的灵活性,但它的效率较低,不适合大...

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

    传统的T-SQL分页方法可能会导致性能问题,尤其是在面对百万级别的数据集时。本文介绍一种简单且高效的SQL Server存储过程实现分页的方法,这种方法仅需提供SQL语句、每页的记录数以及当前页数即可快速完成分页操作。...

    三种SQL分页法效率分析

    本文将详细分析三种SQL分页方法的效率,并提供每种方法的示例。 首先,我们来看第一种分页方案:**Not In 和 SELECT TOP 分页**。这种方法通过先获取前n条记录,然后在主查询中排除这些记录来获取下一页的数据。...

    海量数据分页sql server经典

    本文将介绍几种在SQL Server中实现分页的有效方法,并着重讨论一种基于SQL查询优化的分页技术。 #### 传统分页方法及其局限性 - **ADO 记录集分页法**:这种方法利用ADO的内置功能实现分页。但是它存在明显的缺点...

    SQL Server 2000 通用分页过程

    这个通用分页存储过程提供了一种灵活且高效的分页解决方案。通过合理的参数配置和关键字选择,可以有效地优化查询性能。在实际应用中,还需要根据具体场景调整参数设置,以达到最佳效果。此外,随着数据库技术的发展...

    jsp+sqlserver分页代码

    ### JSP + SQL Server 分页代码详解 #### 一、背景介绍 在Web开发中,分页是一项常用的技术,尤其当数据量较大时,通过分页可以提高用户体验并减轻服务器负担。本文将对一个JSP结合SQL Server实现的简单分页代码...

Global site tag (gtag.js) - Google Analytics