`
KuangYeYaZi
  • 浏览: 55800 次
文章分类
社区版块
存档分类
最新评论

常见数据库分页SQL语句

 
阅读更多

我们在编写MIS系统和Web应用程序等系统时,都涉及到与数据库的交互,如果数据库中数据量很大的话,一次检索所有的记录,会占用系统很大的资源,因此我们常常采用,需要多少数据就只从数据库中取多少条记录,即采用分页语句。根据自己使用过的内容,把常见数据库Sql Server,Oracle和My sql的分页语句,从数据库表中的第M条数据开始取N条记录的语句总结如下:

SQL Server 
        从数据库表中的第M条记录开始取N条记录,利用Top关键字:注意如果Select语句中既有top,又有order by,则是从排序好的结果集中选择:
        SELECT *
        FROM  ( SELECT Top N *  
                         FROM  (SELECT Top (M + N - 1) * FROM 表名称 Order by 主键 desc) t1 ) t2
        Order by 主键 asc

        例如从表Sys_option(主键为sys_id)中从10条记录还是检索20条记录,语句如下:
        SELECT * 
        FROM ( SELECT TOP 20 *
                        FROM (SELECT TOP 29 * FROM Sys_option order by sys_id desc) t1) t2
        Order by sys_id asc

        Oralce数据库
        
从数据库表中第M条记录开始检索N条记录
        SELECT * 
        FROM (SELECT ROWNUM r,t1.* From 表名称 t1 where rownum < M + N) t2
        where t2.r >= M
        例如从表Sys_option(主键为sys_id)中从10条记录还是检索20条记录,语句如下:
        SELECT * 
        FROM (SELECT ROWNUM R,t1.* From Sys_option where rownum < 30 ) t2
         Where t2.R >= 10

        My sql数据库
        My sql数据库最简单,是利用mysql的LIMIT函数,LIMIT [offset,] rows从数据库表中M条记录开始检索N条记录的语句为:
        SELECT * FROM 表名称 LIMIT M,N

         例如从表Sys_option(主键为sys_id)中从10条记录还是检索20条记录,语句如下:
         select * from sys_option limit 10,20

 

以上来源于:http://www.360doc.com/content/06/0323/22/5136_85035.shtml

分享到:
评论

相关推荐

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

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

    数据库分页SQL语句实现

    ### 数据库分页SQL语句实现 在开发MIS系统或Web应用系统时,经常会遇到对数据库进行分页处理的需求。这是因为数据量庞大时,一次性加载所有数据会给系统带来很大的负担,同时也会影响用户体验。因此,分页技术成为...

    数据库分页SQL语句.pdf

    数据库分页 SQL 语句 在数据库开发中,分页技术是一种非常重要的技术,主要用于限制数据库查询结果的条目数,以提高查询效率和减少数据传输量。在不同的数据库管理系统中,分页技术的实现方法各有不同。下面我们将...

    数据库分页SQL语句.docx

    数据库分页是数据库管理系统中非常常见的一种操作,主要用于在大量数据中进行高效的浏览,提高用户体验。在不同的数据库系统中,实现分页查询的SQL语句会有所不同。以下将详细介绍SQL Server、Oracle、MySQL以及DB2...

    数据库真分页SQL语句

    例如,在SQL Server中,获取第10页,每页显示10条记录的真分页SQL语句可能如下: ```sql SELECT * FROM ( SELECT *, ROW_NUMBER() OVER(ORDER BY SomeColumn) AS RowNum FROM YourTable ) AS TmpTable WHERE...

    mysql 数据库分页 sql 语句

    通过输入条件进行数据库分页,还有页面显示,完整功能

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

    ### 三种数据库利用SQL语句进行高效分页 在数据处理和展示中,分页是一项常见且重要的技术。尤其在数据库查询中,合理地使用分页可以极大地提高系统的响应速度和用户体验。本文将详细介绍如何在三种不同的数据库...

    分页SQL语句

    SQL Server 、MySQL 、Oracle数据库分页SQL语句

    常用的数据库分页语句

    数据库分页是数据库管理系统中一个重要的查询技术,用于在大量数据中实现高效的检索。当用户在网页或应用程序中浏览数据时,通常不希望一次性加载所有记录,而是分页显示,这样可以减少网络传输的数据量,提高用户...

    各数据库分页语法支持

    #### SQL Server 数据库分页 SQL Server 提供了多种分页方式,包括使用 ROW_NUMBER() 函数和 TOP 关键字结合的方式。 1. **ROW_NUMBER() 函数分页**: ```sql SELECT * FROM ( SELECT sid, ROW_NUMBER() OVER ...

    jdbc 分页 sql语句

    ### JDBC分页SQL语句详解 #### 一、引言 在数据库操作中,分页查询是非常常见且重要的一个功能。对于大型应用而言,一次性加载大量数据不仅会消耗过多资源,还可能导致用户体验下降。因此,合理地进行分页处理显得...

    linq分页方法步骤在注释里_生成数据库分页及sql语句

    在本教程中,我们将深入探讨如何使用LINQ进行数据库分页,以及它生成的SQL语句。 首先,数据库分页是处理大量数据时非常常用的技术,它可以提高网页或应用程序的性能,避免一次性加载所有数据导致的内存压力和用户...

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

    本文将详细介绍如何在三种主流数据库系统——SQL Server、Access 和 Oracle 中利用 SQL 语句实现高效分页。 1. SQL Server 和 Access 数据库 在 SQL Server 和 Access 这两个微软数据库中,可以使用 `TOP` 关键字...

    数据库分页查询语句

    本文将详细介绍Oracle、DB2、SQL Server 2000/2005、MySQL、PostgreSQL等常见数据库的分页查询方法,并提供具体的SQL语句示例。 #### Oracle 分页查询 Oracle 的分页查询主要通过 `ROWNUM` 函数实现。`ROWNUM` 是 ...

    db2数据库sql语句大全

    ### DB2数据库SQL语句大全 #### 1. 强制关闭所有应用程序 ```sql db2forceapplicationall ``` 此命令用于强制关闭所有正在运行的应用程序,确保在进行维护操作之前所有的应用程序都已关闭。 #### 2. 在线备份...

    java连接数据库的分页语句

    Java 连接数据库的分页语句主要包括连接 Oracle、SQL Server 和 MySQL 数据库的语句,以及连接这些数据库的分页语句。 连接 Oracle 数据库的语句: 使用 Oracle 数据库时,需要使用 Oracle 的 JDBC 驱动程序。首先...

    SqlServer数据库中的分页语句

    在SQL Server数据库中,分页查询是一个非常重要的功能,它允许我们从大量数据中只获取一部分,例如,每次只返回一页的数据,以提高查询效率和用户体验。本篇将深入探讨SQL Server实现分页查询的语句及其工作原理。 ...

    三大数据库的分页语句

    本篇文章将深入探讨Oracle、MySQL和SQL Server这三大主流数据库系统的分页查询语句。 1. **Oracle数据库** Oracle数据库提供`ROWNUM`关键字进行分页。`ROWNUM`为每行分配一个唯一的数字,从1开始。例如,要获取第1...

    java操作mysql数据库,不写sql语句版

    在Java编程中,与MySQL数据库交互通常涉及到使用SQL语句来执行CRUD(创建、读取、更新、删除)操作。然而,为了提高代码的可维护性和安全性,开发者可以选择使用ORM(对象关系映射)框架,如Hibernate或MyBatis,...

    SQL SERVER 数据库实用SQL语句

    分页是 SQL SERVER 中的一种常见操作,可以使用以下语句来实现: `select * from (select (row_number() OVER (ORDER BY tab.ID Desc)) as rownum, tab.* from 表名 As tab) As t where rownum between 起始位置 ...

Global site tag (gtag.js) - Google Analytics