`
ollevere
  • 浏览: 266471 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

oracle sql 按某个字段分组然后从每组取出最大的一条纪录

 
阅读更多

 

oracle sql(按某个字段分组然后从每组取出最大的一条纪录)? 
比如表  mo_partprg
字段有:listid recid
        1       1

        1       2

        2       3

        2       4

        2       5

想得到的数据是     按照   listid  分组   然后取出每组中recid最大的那几条纪录。结果应该是这两条纪录: 
字段:listid  recid
        1       2

        2       5


写法如下:

 

select  listid,recid 
from ( select listid,recid,row_number() over(partition by listid order by    recid desc) rn
          from mo_partprg)   t1 where rn=1;
 

 

 

 

 


 

说明:

row_number()和rownum差不多,功能更强一点(可以在各个分组内从1开始排序)。 

rank()是跳跃排序,有两个第二名时接下来就是第四名(同样是在各个分组内) 

dense_rank()也是连续排序,有两个第二名时仍然跟着第三名。相比之下row_number是没有重复值的。 

 

 

 

 

 

 

 

 

 

分享到:
评论

相关推荐

    sql_按照某一个字段进行去重后获取全部字段

    根据提供的文件信息,本文将详细解释如何通过 SQL 语句实现按照某一字段去重后获取所有字段的操作。在实际工作中,我们经常会遇到需要对数据表中的记录进行去重的情况,尤其是当某个字段作为唯一标识符时,我们希望...

    Oracle查询指定表的所有字段名和数据类型SQL

    ### Oracle查询指定表的所有字段名和数据类型SQL 在Oracle数据库管理中,有时我们需要了解某个特定表的所有字段名称以及它们对应的数据类型等信息。这对于理解表结构、进行数据迁移或编写更为精确的SQL语句非常有...

    ORACLE中BLOB字段导入到SQL SERVER中的IMAGE字段

    本篇文章将详细探讨如何将ORACLE数据库中的BLOB(Binary Large Object)字段导入到SQL SERVER中的IMAGE字段,这通常涉及到数据转换、数据迁移以及可能的数据类型兼容性问题。 首先,让我们了解BLOB和IMAGE字段的...

    oracle SQL查询工具

    oracle SQL查询工具oracle SQL查询工具oracle SQL查询工具oracle SQL查询工具oracle SQL查询工具oracle SQL查询工具oracle SQL查询工具oracle SQL查询工具oracle SQL查询工具oracle SQL查询工具oracle SQL查询工具...

    Oracle中如何用SQL检测字段是否包括中文字符

    首先我想到的是采用检测每个字节ASCII的方式,这样的话需要写一个自定义函数,然后SQL中调用得到结果。但是感觉这个方法估计很耗时,毕竟每个字符都要比较,所以没有去实现。突然想到Oracle有一个编码转换的函数叫...

    Oracle数据库按时间进行分组统计数据的方法

    Oracle数据库提供了一种强大的数据分组和统计功能,这在处理时间序列数据时尤其有用。在本示例中,我们关注的是如何利用SQL查询按时间进行分组统计数据。以下将详细介绍几种常见的分组方法及其应用。 1. **按年份...

    sql server中的image类型的数据导出到oracle的clob字段中

    下面是一个示例代码,演示如何将 SQL Server 中的 Image 类型数据导出到 Oracle 的 CLOB 字段中: 首先,我们需要使用 JDBC 驱动程序连接到 SQL Server 数据库,并从结果集中取出 Image 类型数据: ```java ...

    Oracle_Mysql_Sqlserver字段类型转换参考

    Oracle_Mysql_Sqlserver字段类型转换参考Oracle_Mysql_Sqlserver字段类型转换参考Oracle_Mysql_Sqlserver字段类型转换参考Oracle_Mysql_Sqlserver字段类型转换参考Oracle_Mysql_Sqlserver字段类型转换参考Oracle_...

    oracle数据库字段值自动加1

    Oracle 数据库中,字段值自动加 1 是一个常见的需求,特别是在数据插入时需要自动生成唯一标识符的情况下。下面将详细介绍如何实现 Oracle 数据库字段值自动加 1。 首先,需要创建一个表来存储数据。在本示例中,...

    oracle实现多字段匹配一个关键字查询

    这种方法通过使用Oracle中的字符串连接操作符“||”来合并多个字段值,形成一个新的字符串,然后对该字符串执行LIKE查询。 #### SQL语句示例: ```sql SELECT * FROM table_name WHERE ('column1' || 'column2') ...

    Oracle Sql语句转换成Mysql Sql语句

    在数据库管理领域,Oracle SQL和MySQL SQL是两种广泛使用的SQL方言,它们在语法和功能上存在一定的差异。当需要将一个基于Oracle SQL的应用程序迁移到MySQL环境时,就需要进行SQL语句的转换工作。本项目提供了一个...

    oracle字段去重

    根据提供的描述“oracle字段去重 以某一个字段去重”,可以理解为在某个表中基于特定字段进行去重处理。这里的关键在于如何有效地针对指定的字段进行去重操作。 #### 三、去重方法详解 ##### 3.1 使用DISTINCT...

    读取oracle数据库中clob字段的值

    ### 读取Oracle数据库中CLOB字段的值 在处理Oracle数据库时,经常会遇到需要读取CLOB(Character Large Object)类型字段的情况。CLOB主要用于存储大量的文本数据,如文章、文档等内容。由于CLOB类型的数据量可能...

    Oracle 增加修改删除字段

    在Oracle数据库中,我们经常需要对现有的表结构进行调整,比如增加新的字段、修改现有字段的属性或数据类型、删除不再使用的字段等。这些操作可以通过`ALTER TABLE`命令来完成。本文将详细介绍如何使用`ALTER TABLE`...

    Oracle添加字段的sql语句源码下载

    Oracle添加字段的完整语句,oracle 添加字段时判断字段是否已经存在,sqlserver判断字段是否存在并添加

    oracle sql 某列的值按照逗号分割显示成多行.sql

    oracle 某列存儲的值是有逗號的字符串,希望通過逗號分隔開來顯示多行。sql,有預期結果,有項目實戰。

    oracle某个字段多行记录转化为一行

    ### 标题理解:“oracle某个字段多行记录转化为一行” 此标题明确指出了解决的问题:在Oracle数据库中,如何将特定字段的多行记录合并成一行记录。这种需求通常出现在报告或数据分析的过程中,当需要将多个相关的值...

    Oracle中分组后拼接分组字符串.pdf

    然后,我们使用 `lead()` 函数来获取当前行对应的下一条记录的行号字段 `rnNext`: ```sql select No, Value, Name, rnFirst, lead(rnFirst) over(partition by No order by rnFirst) rnNext from ( ...

    Oracle SQL 官方文档

    Oracle SQL 是一种强大的数据库查询和编程语言,广泛用于管理和操作Oracle数据库系统。11g第二版(11G2)是Oracle的一个重要版本,提供了许多增强功能和优化。本官方文档集包括四份重要的参考资料,涵盖了Oracle SQL...

    oracle中对blob字段的处理方法

    oracle中对blob字段的处理方法,包括增加,删除,修改,更新等操作。

Global site tag (gtag.js) - Google Analytics