今天写了一个oracle的语句:(以前没用过oracle)
语句A:
select w.* from tbl_Win_List w,tbl_Game_Issue g,tbl_Game m where g.game_id=m.id and g.id=w.issue_id and m.gameid=3 and g.id=(select min(p.id) from (select e.id from tbl_Game_Issue e,tbl_Game a,tbl_Win_List i where e.game_id=a.id and i.issue_id=e.id and gameid=3 and rownum<=2 order by e.id desc) p)
语句B:
select w.* from tbl_Win_List w,tbl_Game_Issue g,tbl_Game m where g.game_id=m.id and g.id=w.issue_id and m.gameid=3 and g.id=(select min(p.id) from (select id from (select e.id from tbl_Game_Issue e,tbl_Game a,tbl_Win_List i where e.game_id=a.id and i.issue_id=e.id and gameid=3 order by e.id desc) where rownum<=2) p)
如果这样取的话A语句是先取限定条数后排序,语句B是先排序后取条数,根据要求B语句是正确的写法
分享到:
相关推荐
本文将详细介绍Oracle中常见的几种排序方式,包括按拼音、部首、笔画排序,以及如何处理NULL值,使用DECODE和NVL函数,以及实现高效的分页查询。 1. **按拼音排序**:Oracle支持按照汉字的拼音进行排序,这在处理...
本篇文章将详细介绍Oracle中实现多行记录合并的几种方法,包括使用SQL函数、集合操作以及自定义函数。 1. **使用SQL函数:** - **`LISTAGG()` 函数:** 这是Oracle 11g及以后版本引入的一个强大的聚合函数,专门...
如果想取得排序后的前几条记录,需要使用子查询来实现。 Hibernate 实现分页查询 Hibernate 也可以实现分页查询,例如: ```java Query q = session.createQuery("from Cat as c"); q.setFirstResult(20000); q....
`NLSSORT()`函数用于对数据进行排序前的转换,以便能够根据指定的语言环境规则进行排序。其语法结构如下: ```sql NLSSORT(column, sort_rule) ``` 其中: - `column`:需要排序的字段或表达式。 - `sort_rule`:...
4. **事务管理**:对于涉及多条数据库记录的操作,使用事务可以确保数据的一致性。 `inc.asp`文件可能还包含了关闭数据库连接的代码,例如: ```vbscript conn.Close Set conn = Nothing ``` 确保在完成所有数据库...
- **限制查询结果数量**:比如只需要查询前几条记录。 - **分页查询**:例如,实现每页显示固定数量的记录。 ##### 3. ROWNUM 的使用示例 假设我们有一个名为 `SALE` 的表,包含月份(`MONTH`)和销售额(`SELL`)...
Oracle数据库在处理多行记录合并、连接和聚合字符串时,有多种方法,下面将详细介绍其中的几种常见技术。 1. 被集合字段范围小且固定型 这种方法适用于字段值有限且已知的情况。通过使用`DECODE`函数,我们可以为每...
在理解Oracle分页的具体实现之前,我们首先需要明确几个基本的概念: 1. **ROWNUM**:Oracle提供了一个内置的伪列`ROWNUM`,它可以为查询结果集中的每一行返回一个唯一的行号。`ROWNUM`从1开始计数,并且只能用于`...
首先,我们关注的是取某个时间段的数据,特别是每周几的上午几点到几点。这通常涉及到日期和时间函数的使用。在Oracle中,`TO_DATE`函数用于将字符串转换为日期类型,`TO_CHAR`函数则用于将日期或时间转换为字符串...
在Oracle数据库中,分页查询是一项常见的操作,用于在大量数据中检索特定部分,而无需加载整个结果集。本文将详细探讨三种常用的Oracle分页SQL方法:ROWNUM、ROWNUM结合子查询以及新引入的Oracle 12c的FETCH NEXT ...
总结来说,Oracle和JSP结合实现分页涉及以下几个步骤:在Oracle中构造分页查询,使用JDBC在Servlet中执行查询,然后在JSP页面中展示数据。理解并熟练掌握这些步骤对于开发高效、用户友好的数据驱动网站至关重要。在...
### 提高Oracle数据库查询效率 在Oracle数据库管理与优化领域,提高查询效率是至关重要的一个环节。这不仅能够显著提升应用程序的性能,还能减少数据库服务器的负载,从而为用户提供更流畅的服务体验。本文将结合...
在 FROM 子句中包含多个表的情况下,需要选择记录条数最少的表作为基础表。如果有 3 个以上的表连接查询,那就需要选择交叉表(intersection table)作为基础表,交叉表是指那个被其他表所引用的表。 2. WHERE 子句...
### Oracle数据库整理学习手册知识点详解 #### 一、Oracle数据库简介 Oracle数据库是由甲骨文公司(Oracle Corporation)开发的一款关系型数据库管理系统。甲骨文公司作为全球知名的软件服务商之一,在数据库市场上...
其次,"oracle常见操作.txt"文件很可能是对Oracle数据库常用操作的文本说明,可能涵盖以下几个方面: 1. **查询操作**:Oracle的SQL查询语句基于标准SQL,但支持更复杂的子查询、连接操作、聚合函数(如COUNT、SUM...
在Java Web开发中,与Oracle数据库进行交互时,分页功能是常见的需求,尤其是在处理大量数据时,为了提高用户体验和加载速度,分批次地显示数据是必不可少的。本项目提供的源代码正是针对这一需求,提供了在Java Web...
### 对Oracle性能优化多种主要方法的总结 #### 一、SQL语句优化 **SQL语句优化的过程**主要包括以下几个步骤: 1. **定位有问题的语句**:通过Oracle的内部工具,比如`v$session_wait`和`v$sql`等视图来定位执行...
Oracle分析函数是数据库管理系统Oracle中一组强大的工具,用于处理集合数据,特别是在复杂的报表和数据分析场景中。它们允许用户在单个SQL查询中执行聚合操作,同时保持行的原始顺序,这是传统的GROUP BY函数无法...