oracle数据库排序后如何获取第一条数据

Fawn ·
更新时间:2024-09-20
· 886 次阅读

目录

oracle排序后如何获取第一条数据

场景

实现

oracle分组后获取每组数据第一条数据

总结

oracle排序后如何获取第一条数据 场景

想要获取下列sql的数据的第一条

select NEXT_FOLLOWUP_DATE from PH_CHILD_HEALTH_EXAM where person_info_id = '3afc119ab460497d85f59b1e135ea6b1' order by followup_Visit_Date desc

实现 select NEXT_FOLLOWUP_DATE from (select NEXT_FOLLOWUP_DATE from PH_CHILD_HEALTH_EXAM where person_info_id = '3afc119ab460497d85f59b1e135ea6b1' and is_Cancel = 0 order by followup_Visit_Date desc) where rownum = 1;

oracle分组后获取每组数据第一条数据 [sql] SELECT *           FROM (SELECT ROW_NUMBER() OVER(PARTITION BY x ORDER BY y DESC) rn,                 test1.*                 FROM test1)          WHERE rn = 1  ;

此sql代表按照字段x进行分组,按照字段y倒序排序,取每个分组中的第一条数据。

其中 partition by 是指的是要进行分组的字段。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持软件开发网。



排序 Oracle oracle数据库

需要 登录 后方可回复, 如果你还没有账号请 注册新账号