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

相关推荐
TO_WebNow4 小时前
MySQL 索引的相关知识
数据库·mysql
神明9314 小时前
如何处理ORA-01152报错_恢复未完成导致的数据文件仍需介质恢复
jvm·数据库·python
许长安4 小时前
Redis 跳表实现详解
数据库·c++·经验分享·redis·笔记·缓存
m0_596749094 小时前
mysql如何导出特定条件的查询数据_使用mysqldump加where参数
jvm·数据库·python
赢乐5 小时前
大模型学习笔记:LangChain核心组件-记忆(memory)
数据库·langchain·长短时记忆网络·长期记忆·短期记忆·智能体agent·记忆(memory)
jieyucx5 小时前
Go语言通透教程:结构体定义与方法
服务器·数据库·golang·结构体
m0_690825825 小时前
c++ RAII机制详解 c++如何利用RAII管理资源
jvm·数据库·python
JunLa5 小时前
L angGraph vs 链式调用
java·网络·数据库
DianSan_ERP6 小时前
抖店订单接口中消费者信息加密解密机制与安全履约全解析
前端·网络·数据库·后端·安全·团队开发·运维开发
爱码小白6 小时前
MySQL运维篇
大数据·数据库·python