【oracle】分组求最新日期的数据

获取每个分组的最新记录

如果你想要的是每个分组(比如按客户ID分组)的最新记录,那么你可以使用窗口函数(如ROW_NUMBER())来实现:

sql 复制代码
SELECT * FROM (
    SELECT o.*,
           ROW_NUMBER() OVER(PARTITION BY customer_id ORDER BY order_date DESC) AS rn
    FROM orders o
) WHERE rn = 1;

这个查询为每个customer_id分组内的记录按照order_date降序排列,并使用ROW_NUMBER()为每个分组内的记录分配一个唯一的序号(在分组内最新的记录序号为1)。然后,外层查询通过WHERE rn = 1来选择每个分组内序号为1的记录,即每个客户的最新订单记录。

相关推荐
Maverick0621 分钟前
Oracle PDB 概念与架构
运维·数据库·oracle
新猿一马23 分钟前
服务端安全开发注意事项
数据库·web安全·oracle
bigcarp28 分钟前
Roundcube Webmail + sqlite
数据库·sqlite
m0_6625779733 分钟前
自动化机器学习(AutoML)库TPOT使用指南
jvm·数据库·python
_Re.33 分钟前
达梦数据库阻塞及锁处理
数据库
于慨37 分钟前
spring boot
java·数据库·spring boot
爱学习的小可爱卢44 分钟前
Redis从入门到精通:入门到精通(万字详解)
数据库·redis·中间件
sqyno1sky1 小时前
机器学习模型部署:将模型转化为Web API
jvm·数据库·python
爱丽_1 小时前
G1 深入:Region、Remembered Set、三色标记与“可预测停顿”
java·数据库·算法
dapeng28701 小时前
机器学习与人工智能
jvm·数据库·python