ORACLE多列中取出数据最大的一条

1.需求说明:

当查询出来的数据存在多条数据时,想按照一定条件排序取出其中一条数据。

2.使用函数:

row_number() over( partition by 分组字段 order by 排序字段 desc)

3.示例:

--根据table_a中的pk_house,pk_customer进行分组,然后根据table_b.billdate进行排序,取出最大billdate的一条数据

select *
from (select table_a.code,
table_a.name,
table_b.billdate,
row_number() over(partition by table_a.pk_house, table_a.pk_customer order by table_b.billdate desc) rn
from table_a
left join table_b
on table_b.pk_table_a = table_a.pk_table_a
where table_a.code = '11111')
where rn = 1

相关推荐
散峰而望2 分钟前
Dev-C++一些问题的处理
c语言·开发语言·数据库·c++·编辑器
Elieal21 分钟前
Spring 框架IOC和AOP
java·数据库·spring
@爱学习的小趴菜32 分钟前
Redis服务器配置
服务器·数据库·redis
寒秋丶2 小时前
Milvus:向量字段-二进制向量、稀疏向量与密集向量(六)
数据库·人工智能·python·ai·ai编程·milvus·向量数据库
寒秋丶2 小时前
Milvus:通过Docker安装Milvus向量数据库(一)
数据库·人工智能·docker·ai·ai编程·milvus·rag
Maỿbe3 小时前
Redis的持久化
数据库·redis·缓存
努力学习的小廉4 小时前
初识MYSQL —— 基本查询
数据库·mysql·1024程序员节
许泽宇的技术分享4 小时前
让数据库“听懂“人话:Text2Sql.Net 深度技术解析
数据库·.net
珊珊而川4 小时前
MAC-SQL 算法一
数据库·sql·oracle
听风吟丶5 小时前
深入解析 Spring Boot 自动配置:原理、实践与进阶
java·数据库·sql