`
皖雪欢飞
  • 浏览: 25693 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

sql server,mysql,oracle分页查询的区别

 
阅读更多

总结了一下mysql,sql server,oracle数据库分页查询的区别:

一、mysql:

mysql提供了 LIMIT函数。一般只需要直接写到sql语句后面就行了。

例如:

LIMIT子 句可以用来限制由SELECT语句返回过来的数据数量,它有一个或两个参数,如果给出两个参数, 第一个参数指定返回的第一行在所有数据中的位置,从0开始(注意不是1),第二个参数指定最多返回行数。例如:
select * from table WHERE … LIMIT 10; #返回前10行
select * from table WHERE … LIMIT 0,10; #返回前10行
select * from table WHERE … LIMIT 10,20; #返回第10-20行数据

二、sql server:

SQLServer数据库又分为 SQLServer2000和SQLServer2005。一般比较简单的方法是通过TOP函数来实现

SQLServer2005提供了一个row_number()函数。 ROW_NUMBER() 就是生成一个顺序的行号,而他生成顺序的标准,就是后面紧跟的OVER(ORDER BY ReportID),其中ReportID可 以是联合主键。例如:
SELECT TOP 10 *  FROM
(
SELECT top 10 ROW_NUMBER() OVER (ORDER BY ReportID) AS RowNo
FROM TABLE
) AS A
WHERE RowNo > pageIndex*10 (pageIndex就是我们需要数据的页数.)

三、oracle:ORCALE数据库实现分页查询可以使用 row_number()函数或者使用rownum 虚列两种方法。
第一 种:利用分析函数row_number() 方法
select * from(
select t.*,row_number() over (order by t1.id) rowno from TABLE1
)
where rowno between 21 and 40;

第二种:直接 使用rownum 虚列
select * from
(select t.*,rownum as rowno from TABLE1 )
where rowno between 10 and 20
这两种方法比较,显然第二种方法比较好。因为不用order by语句,会提高检索数据的速度的,尤其数据量越大时,第二种方法快速检索数据越明显

分享到:
评论

相关推荐

    mysql、sqlserver、oracle分页,java分页统一接口实现

    MySQL、SQL Server、Oracle 分页及 Java 分页统一接口实现 MySQL、SQL Server、Oracle 分页是关系数据库管理系统中最基本也是最常用的操作之一,而 Java 分页统一接口实现则是对数据库操作的抽象和封装。本文将对 ...

    Oracle,SQl,MySql实现分页查询

    本文将基于提供的文件信息,深入探讨三种不同的分页查询方法及其在Oracle、SQL Server(这里用SQL代替)、MySQL中的实现方式,并对它们的性能进行对比分析。 #### 分页方案一:利用Not In和SELECT TOP分页 **基本...

    sqlserver,mysql,oracle三种数据库的分页查询

    本文将深入探讨SQL Server、MySQL和Oracle这三种主流数据库系统中的分页查询实现方式。 首先,我们来看SQL Server。SQL Server提供了一种称为"TOP"的关键字来实现分页。例如,如果我们想获取第1页(假设每页有10条...

    用于oracle,mysql,sqlserver,数据库分页联合查询

    本话题主要聚焦于如何在Oracle、MySQL和SQL Server这三种主流关系型数据库中实现分页联合查询。 首先,我们来看Oracle数据库的分页查询。Oracle使用ROWNUM关键字来实现分页。例如,如果我们想获取第10到20条记录,...

    sql分页(sqlserver,mysql,oracle )

    不同的数据库系统,如SQL Server、MySQL、Oracle,由于其设计原理和语法的不同,在实现分页功能上也有所差异。下面将详细介绍这三种数据库系统的分页方法。 ### SQL Server 分页 SQL Server 中实现分页主要通过`...

    sql 分页 oracle mysql sqlserver

    sql 分页 针对oracle mysql sqlserver 等数据库的通用类

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

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

    mysql分页,oracle分页,sql server三种数据库实现分页

    mysql,oracle,sql server分页总结与比较

    mysql,oracle,sqlserver分页

    ### 数据库分页技术详解:MySQL、Oracle与SQL Server #### Oracle 分页 在Oracle数据库中实现分页功能,主要依赖于`ROWNUM`伪列。`ROWNUM`用于为查询结果集中的每一行分配一个唯一的编号,从1开始递增。通过控制`...

    Oracle Sql语句转换成Mysql Sql语句

    2. **分页查询**:Oracle使用ROWNUM进行分页,而MySQL通常使用LIMIT和OFFSET。在转换过程中,需要将Oracle的ROWNUM替换为MySQL的LIMIT子句。 3. **连接查询**:Oracle的JOIN语法允许在ON条件中使用子查询,而在...

    Sqlserver、Oracle、MySql、PostgreSql、SqlLite数据库差异

    - **Sqlserver**、**Oracle**、**MySql**、**PostgreSql** 和 **SqlLite** 都提供了丰富的内置函数支持,包括数学、日期时间、字符串处理等多方面功能。 #### 五、分页 分页是数据库中常见的需求之一,不同的...

    oracle mysql SQL server分页

    下面将介绍两种常用的Oracle分页查询方法: 1. **基础分页查询**: ```sql SELECT * FROM ( SELECT t.*, ROWNUM rn FROM table_name t WHERE ROWNUM ORDER BY attribute_id DESC ) WHERE rn >= 6 ORDER ...

    oracle mysql sqlserver分页

    以上就是Oracle、MySQL和SQL Server三种数据库中分页查询的基本实现方法。通过这些方法,我们可以有效地处理大量数据的分页显示问题,提高应用程序的性能和用户体验。每种数据库的实现细节有所不同,因此在实际开发...

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

    ### Oracle分页方法 Oracle数据库提供了`ROWNUM`伪列来进行分页查询,但在使用时需要注意一些细节。 #### 3. 使用`ROWNUM`伪列 - **获取指定范围的数据**(例如第2至第3条记录): ```sql SELECT ID FROM ( ...

    mySql与oracle分页技术

    Oracle 12c引入了`FETCH NEXT`和`OFFSET`,这使得Oracle的分页语法与MySQL和SQL Server等其他数据库系统更加兼容: ```sql SELECT * FROM your_table OFFSET 10 ROWS FETCH NEXT 10 ROWS ONLY; ``` 这种方法避免了...

    Oracle中实现MySql中limit+SqlServer分页+分页的存储过程

    本篇文章将探讨如何在Oracle数据库中实现类似MySQL的`LIMIT`分页功能,以及如何模拟SQL Server的分页方式,并介绍`INTERSECT`和`MINUS`这两个SQL运算符。 首先,`INTERSECT`运算符用于找出两个或多个查询结果中的...

    数据库分页查询整理(oracle、mysql、SqlServer、access、db2等)

    不同的数据库管理系统(DBMS)有不同的分页查询语句,下面对 Oracle、DB2、SQL Server、MySQL、Access 等数据库的分页查询语句进行了整理。 SQL Server 分页查询 SQL Server 中有两种分页查询方法: 1. 第一种...

    数据库分页大全,oracle,sqlserver,mysql

    ### 数据库分页技术详解:Oracle、SQL Server、MySQL #### 一、引言 在进行数据查询时,为了提高用户体验以及系统性能,通常需要对数据进行分页处理。不同的数据库管理系统(Database Management System,DBMS)...

    mysql oracle和sqlserver分页查询实例解析

    本文将分别介绍MySQL、Oracle和SQL Server三种主流数据库系统的分页查询实现。 首先,MySQL的分页查询非常直观,只需要使用`LIMIT`关键字。基本语法是`SELECT * FROM (query) o LIMIT firstIndex, pageSize`。这里...

    (sqlserver/oracle/mysql/access/sqlite)数据库操作组件Zhuyi.DBUtility

    Zhuyi.DBUtility是一个数据库操作组件,支持多种常见的关系型数据库系统,包括SQL Server、Oracle、MySQL、Access以及SQLite。这个组件的核心在于提供了一种统一的接口来简化数据库的CRUD(创建、读取、更新和删除)...

Global site tag (gtag.js) - Google Analytics