`
zcz123
  • 浏览: 158834 次
  • 性别: Icon_minigender_1
  • 来自: 厦门
社区版块
存档分类

几种数据库的sql分页

 
阅读更多

Oracle 分页
分页查询格式(第1种):
SELECT * FROM
(
SELECT A.*, ROWNUM RN
FROM (SELECT * FROM TABLE_NAME) A
WHERE ROWNUM <= 40
)
WHERE RN >= 21

分页查询格式(第2种):
SELECT * FROM
(
SELECT A.*, ROWNUM RN
FROM (SELECT * FROM TABLE_NAME) A
)
WHERE RN BETWEEN 21 AND 40
对比这两种写法,绝大多数的情况下,第一个查询的效率比第二个高得多。
参考:http://yangtingkun.itpub.net/post/468/100278

 

Sqlserver 分页
方法1:
SELECT TOP 页大小 *
FROM table1
WHERE id NOT IN
          (
          SELECT TOP 页大小*(页数-1) id FROM table1 ORDER BY id
          )
ORDER BY id
方法2:
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:
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的游标存储过程分页)    效率最差,但是最为通用
参考:http://www.cnblogs.com/morningwang/archive/2009/01/02/1367277.html

 

mysql 分页
mysql 的语法:
SELECT * FROM table  LIMIT [offset,] rows | rows OFFSET offset
LIMIT 子句可以被用于强制 SELECT 语句返回指定的记录数。
LIMIT 接受一个或两个数字参数。
参数必须是一个整数常量。如果给定两个参数,
第一个参数指定第一个返回记录行的偏移量,第二个参数指定返回记录行的最大数目。
初始记录行的偏移量是 0(而不是 1)
具体的使用命令如下:
mysql> SELECT * FROM table LIMIT 5,10;  // 检索记录行 6-15
//为了检索从某一个偏移量到记录集的结束所有的记录行,可以指定第二个参数为 -1:
mysql> SELECT * FROM table LIMIT 95,-1; // 检索记录行 96-last.
//如果只给定一个参数,它表示返回最大的记录行数目:
mysql> SELECT * FROM table LIMIT 5;     //检索前 5 个记录行
//换句话说,LIMIT n 等价于 LIMIT 0,n。
参考:http://www.phpweblog.net/peiyinjin/archive/2008/04/15/3199.html

 

分享到:
评论

相关推荐

    几种数据库常见分页sql

    以上就是 SQL Server、Oracle 和 MySQL 三种数据库中常见的分页查询方法。不同的数据库有不同的语法特点,但核心思想都是通过限制返回结果的数量来实现分页功能。开发者可以根据实际项目需求及所使用的数据库类型来...

    几种数据库的数据分页

    ### 几种数据库的数据分页 #### 概述 数据分页是指在处理大量数据时,将数据分成多个页面进行展示的技术。对于大型数据库系统来说,分页不仅可以提高查询效率,还能改善用户体验。本文将详细介绍MySQL、SQL Server...

    几条常见的数据库分页SQL 语句

    几条常见的数据库分页SQL 语句,针对oracle,sqlserver,mysql三种常见数据库的分页显示。

    三种数据库利用SQL语句进行高效果分页

    本文将详细介绍如何在三种不同的数据库系统(SQL Server、Access、Oracle)中实现高效的SQL分页查询。 #### SQL Server 分页查询 SQL Server 支持 `TOP` 关键字,这使得在 SQL Server 中实现分页变得相对简单。...

    几种数据库分页查询的区别

    Oracle、MYSQL、sqlserver和DB2分页查询 分页查询

    SQL 数据库实现分页技术教程

    在ASP.NET中实现数据分页主要有以下几种方式: 1. **使用DataGrid控件** DataGrid是ASP.NET中用于显示数据的强大控件之一。它支持内建的分页功能,可以轻松地实现数据的分页显示。通过设置`AllowPaging`属性为`...

    各数据库分页语法支持

    不同的数据库系统提供了不同的分页机制,本文将详细介绍几种常见数据库(Oracle、DB2、SQL Server、PostgreSQL)的分页语法支持,并给出具体的示例。 #### Oracle 数据库分页 Oracle 支持多种分页方式,包括三层...

    达梦数据库的基本操作以及分页查询等

    根据java语言对达梦DM数据库的连接和操作,包括建表、新增、修改、删除、查询以及复杂查询和分页查询等完整代码,附送Dm7Dictionary的驱动包,此驱动包兼容jdk1.7和jdk1.8本人亲测完美兼容

    sql server分页技术(SQL Server 与Access数据库相关分页技术)

    以下是几种常用的SQL Server分页技术: 1. **TOP 和 NOT IN** 分页: 这种方法通过`TOP`关键字选取指定数量的记录,然后使用`NOT IN`子句排除已选取的记录。例如,查询第二页的记录,可以先选取前`@RecordStart`个...

    JSP连接SQL数据库实现数据分页显示

    ### JSP连接SQL数据库实现数据分页显示 在本文中,我们将探讨如何使用JSP(Java Server Pages)技术连接到SQL数据库并实现数据分页显示的功能。数据分页是提高用户体验的重要手段之一,特别是在处理大量数据时。接...

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

    本文将详细介绍Oracle、MySQL、SQL Server等常见数据库系统的分页方法。 ### MySQL分页方法 #### 1. 使用`LIMIT`子句 MySQL提供了`LIMIT`子句来实现分页查询。该子句可以接受两个参数:第一个参数为起始行号...

    Oracle 3种分页SQL方法比较

    本文将详细探讨三种常用的Oracle分页SQL方法:ROWNUM、ROWNUM结合子查询以及新引入的Oracle 12c的FETCH NEXT WITH OFFSET语法。这三种方法各有优缺点,适用于不同的场景。 1. ROWNUM方法: ROWNUM是Oracle中最基础...

    数据库分页方法

    通过对上述几种分页方法的学习,我们可以看到不同场景下应选择不同的策略来实现高效的分页功能。在实际开发过程中,根据具体需求合理选择并灵活运用这些方法,对于提升系统的整体性能和用户体验都具有重要意义。希望...

    易语言数据库分页显示

    在易语言中实现数据库分页显示,主要涉及以下几个关键知识点: 1. **数据库连接**:首先,需要建立与数据库的连接。易语言提供了多种数据库接口,如ODBC(开放数据库连接)或ADO(ActiveX数据对象),通过这些接口...

    sql分页查询几种写法

    以下将详细介绍几种常见的SQL分页查询方法。 1. **Not In / Top 方法** 这种方法通过`NOT IN`子查询配合`TOP`来实现分页。首先,获取需要排除的前n条记录,然后在主查询中排除这些记录,从而得到分页后的结果。...

    java web利用数据库分页

    在Java Web开发中,数据库分页是一种常见的技术,用于处理大量数据时提高应用程序的性能和用户体验。当数据集过大,一次性加载所有记录到用户界面可能导致内存压力和响应速度下降。因此,分页允许用户逐步浏览数据,...

    TERADATA、ORACLE数据库分页

    本篇将深入探讨TERADATA和ORACLE这两种广泛应用的关系型数据库在实现分页查询时的方法。 TERADATA是一个并行数据库系统,以其高效的大数据处理能力著称。在TERADATA中,进行分页查询主要通过使用`TOP`或`LIMIT`...

    不同数据库中分页的代码实现

    以上介绍了几种常见数据库的分页实现方法,可以看出每种数据库的分页方式都有所不同。选择合适的分页方法可以显著提高查询效率,同时也能简化开发过程。在实际应用中,可以根据具体使用的数据库类型和业务需求选择最...

    sql分页的几种方法

    ### SQL分页的几种方法 #### 背景介绍 在数据库操作中,分页是一项非常常见的需求。尤其是在处理大量数据时,为了提高查询效率、减少服务器负担,并为用户提供更好的体验,分页变得尤为重要。SQL提供了多种实现分页...

Global site tag (gtag.js) - Google Analytics