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 分钟前
开发过程中动态 SQL 中where 1=1的作用是什么
java·服务器·开发语言·数据库·sql
曲莫终3 分钟前
springboot集成h2内存数据库运行测试用例
数据库·spring boot·测试用例
她说..3 分钟前
Spring AOP场景5——异常处理(附带源码)
java·数据库·后端·spring·springboot·spring aop
dllxhcjla11 分钟前
MySQL单表
数据库·mysql
叫我龙翔12 分钟前
【Redis】从零开始掌握redis --- 认识redis
数据库·redis·缓存
小马爱打代码14 分钟前
慢SQL:查询、定位分析解决的完整方案
数据库·sql
Alaia.15 分钟前
【T级别数据迁移】Oracle 数据库迁移操作手册(oracle-migrate-bash)
数据库·oracle·bash
Pocker_Spades_A16 分钟前
时序数据库选型指南:用工程视角理解 Apache IoTDB
数据库·apache·时序数据库·iotdb
深海空无一人16 分钟前
数据库进阶
数据库
心动啊12118 分钟前
MySQL在python中的使用——连接方式及对对象的调用
数据库·mysql