`

oracle limit

阅读更多

迅雷文学是小说阅读网提供小说免费阅读,小说大全,好看的小说,玄幻魔法,武侠修真,都市言情,历史军事,网友动漫,科幻灵异,小说免费阅读尽在迅雷文学小说阅读网  斗破苍穹

select * from a_matrix_navigation_map
where rowid not in(select rowid from a_matrix_navigation_map where rownum<=0) and rownum<=10

第二种:

SELECT * FROM
(
SELECT A.*, rownum r
FROM
(
SELECT *
FROM a_matrix_navigation_map

) A
WHERE rownum <= 10
) B
WHERE r > 0

第三种

SELECT * FROM table WHERE ROWNUM<101; 
minus 
SELECT * FROM table WHERE ROWNUM<91; 
第四种

可以用变通一点的办法,我给个示例: 

sql = "select a_id,a_title,a_author,aID,a_time,a_readtime,sID from article order by a_id"; 

int a; 
while (rs.next()) { 
a++; 
if (a=ipage+spage)continue; 
... 
}

其中第二种是非常成熟的分页
我的实例~ 即可实现 类似limit 功能
$bandanspager="select * from abc t2,abc1 t1 where t1.id=t2.id group by t1.id";
   $sql=" SELECT * FROM
         (
            SELECT A.*, rownum r
            FROM
            ( ".$bandanspager.") A
           WHERE rownum <= 10
         ) B

         WHERE r > 0

 

 

Oracle不支持类似于 MySQL 中的 limit. 但你还是可以rownum来限制返回的结果集的行数.

如果你只希望返回前十行纪录,你可以这样写: 

SELECT * FROM table WHERE ROWNUM<10; 

但是下面的语句是不对的:

SELECT * FROM table WHERE ROWNUM>90 AND ROWNUM<100; 

这是因为 Oracle 认为这个条件不成立,所以没有返回。
你应该这样写: 

SELECT * FROM table WHERE ROWNUM<101; 
minus 
SELECT * FROM table WHERE ROWNUM<91;

 

其他数据库模拟实现mysql的limit语法

假如我有个user表,我想查询符合某些条件的第50个用户开始的10个用户,且不能使用id号between and那样查询,应该怎么写SQL语句?

  在mysql数据库中有limit,offset语句可以方便的实现,那么在SQL server中呢?SQL Server是否支持limit和offset语句呢?

select top 10 * from
(select top 60 * from [user] order by userid) aa
order by userid desc

  oracle,如果想从表中取出按照某字段排序前M到N条记录

  下面的ORACLE语句是最好的:

SQL> select ID from
     (
       select ID , rownum as con from
       (
        select ID from TestSort order by ID
       )
       where rownum <= 3   /*N值*/
     )
     where con >= 2; /*M 值*/
ID
----------
         2
         3

 

分享到:
评论
2 楼 zhq426 2011-05-30  
xiting 写道
我倒,首句那是打广告么?

额,话说,还是弄不明白limit……

很杯具的告诉你,确实是打广告的,阿弥托福,被逼的啊
1 楼 xiting 2011-05-06  
我倒,首句那是打广告么?

额,话说,还是弄不明白limit……

相关推荐

    Oracle分页(limit方式的运用)

    ### Oracle分页(LIMIT方式的运用) 在数据库查询操作中,分页是非常常见的需求之一,尤其是在数据量较大的情况下,为了提高用户体验以及减轻服务器压力,我们需要将数据分成若干个页面进行展示。Oracle数据库作为...

    java笔记\Oracle里sql不能用limit的处理

    Java笔记--Oracle中SQL不能用Limit的处理 在Java开发中,我们经常需要对数据库进行分页查询,但是Oracle数据库不支持Limit关键字,那么如何在Oracle中实现分页查询呢?下面,我们将详细介绍Oracle中SQL不能用Limit...

    oracle11g设置内核参数和limit的增强

    ### Oracle 11g R2 for Linux:内核参数与Limit自动配置详解 #### 引言 Oracle数据库作为全球领先的企业级数据库管理系统之一,在不同操作系统环境下有着广泛的应用。随着技术的发展,Oracle也在不断地进行优化与...

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

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

    oracle删除数据方法。

    FETCH CUR_ROWID BULK COLLECT INTO V_ROWID_ARRAY LIMIT 10000; ``` - 使用 `BULK COLLECT` 将游标中的结果一次性读取到 `V_ROWID_ARRAY` 数组中,这里限制了每次最多读取10000条记录。 3. **批量删除数据**: ...

    Mysql转oracle工具

    例如,MySQL支持的`LIMIT`在Oracle中需用`ROWNUM`或`FETCH FIRST`来实现分页;MySQL的`INFORMATION_SCHEMA`在Oracle中对应的是`DBA_`或`USER_`视图;此外,存储过程、触发器和函数的语法也有区别。 2. **数据类型...

    Oracle 中使用 fetch bulk collect into 批量效率的读取游标数据

    Oracle 中使用 fetch bulk collect into 批量效率的读取游标数据 Oracle 中的游标数据读取是数据库开发中非常常见的操作。通常,我们使用 fetch some_cursor into var1, var2 形式来获取游标数据,当游标中的记录数...

    Oracle Sql语句转换成Mysql Sql语句

    在转换过程中,需要将Oracle的ROWNUM替换为MySQL的LIMIT子句。 3. **连接查询**:Oracle的JOIN语法允许在ON条件中使用子查询,而在MySQL中,子查询通常需要移到FROM或WHERE子句中。 4. **游标**:Oracle SQL支持...

    Oracle Exception汇总(自定义Oracle异常)

    17. **SUBSCRIPT_OUTSIDE_LIMIT** (ORA-06532): 当使用嵌套表或VARRAY元素的下标为负值时,会抛出此异常。下标必须是非负的。 18. **TIMEOUT_ON_RESOURCE** (ORA-00051): 当Oracle在等待资源时超时时,会报告此异常...

    oracle日常巡检命令集合

    若`LIMIT_VALUE-MAX_UTILIZATION,则表明与`RESOURCE_NAME`相关的Oracle初始化参数需要调整。 2.2. 检查数据库连接情况 使用命令`select count(*) from v$session;`和`select sid, serial#, username, program, ...

    sql语句中select top n与oracle的rownum与mysql的limit用法

    sql语句中select top n与oracle的rownum与mysql的limit 取前几条数据sql简单用法

    信息安全等级保护测评实施Oracle11g三级测评指导书.doc

    Oracle 11g三级测评指导书 本文主要介绍了Oracle 11g三级测评指导书的实施过程,涵盖了数据库安全、身份鉴别、口令管理、登录失败处理、远程管理等方面的安全性要求。 一、身份鉴别 身份鉴别是数据库安全的重要...

    PGA导致oracle内存泄露

    PGA导致oracle内存泄露,经历1个月的时间,终于搞定该问题,对于学习ORACLE 内存泄露是一次比较好的总结。

    Oracle学习笔记 Oracle学习笔记

    - 创建一个名为`lock_account`的profile,并设置失败登录尝试次数为3次,密码锁定时间为2小时:`create profile lock_account limit failed_login_attempts 3 password_lock_time 2;` - 将这个profile应用到用户...

    pg与oracle语法差异

    ### pg与oracle语法差异知识点详解 #### 一、空值处理 **PostgreSQL** 和 **Oracle** 在处理空值(`null`)方面存在显著差异: - **PostgreSQL**: `null` 和空字符串(`''`)被视为不同的值。这意味着在进行比较或...

    ORACLE根据某一列的值修改另一列的值

    Oracle 数据库开发培训中根据某一列的值修改另一列的值 Oracle 数据库是一种关系型数据库管理系统,广泛应用于企业级应用程序中。在 Oracle 数据库中,我们可以使用 update 语句来修改某一列的值根据另一列的值。...

    Oracle的SQL分页实践

    使用JDBC时,可以结合LIMIT和OFFSET子句(Oracle不支持LIMIT,但可以通过ROWNUM模拟)来实现分页,而在Hibernate中,可以使用Criteria API或HQL的`setFirstResult`和`setMaxResults`方法来实现相同的功能。...

    基于mybatis-generate 的Oracle数据库的分页生成插件

    mybatis 分页 mybatis-generate Oracle数据库 大家知道mybatis自动生成代码是没有分页功能的 我在网上找了很久 有很多内容 但正真可以使用的少之又少 本人整合了网上的资源 整理了基于Oracle数据库的mybatis插件 ...

    Oracle错误码大全 oracle数据库

    这通常发生在使用SELECT语句进行查询时,如果查询结果超过了声明的LIMIT或FETCH子句的限制,就会引发此错误。解决方法可能是调整查询语句,正确设定限制条件。 除了标准的错误码,Oracle数据库还有一系列与特定模块...

    redhat 安装oracle 11g

    ### Red Hat Enterprise Linux 6 (RHEL6) 安装 Oracle 11g R2 的详细步骤 #### 一、概述 在Red Hat Enterprise Linux 6 (RHEL6) 上安装 Oracle 11g R2 数据库是一项重要的系统管理任务。此过程涉及到系统的配置调整...

Global site tag (gtag.js) - Google Analytics