oracle数据库排序后怎么获取第一条数据

作者:有用网 阅读量:174 发布时间:2024-01-13
关键字 ORACLE

这篇文章主要介绍“oracle数据库排序后怎么获取第一条数据”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“oracle数据库排序后怎么获取第一条数据”文章能帮助大家解决问题。

    场景

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

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

    oracle数据库排序后怎么获取第一条数据

    实现

    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数据库排序后怎么获取第一条数据

    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 是指的是要进行分组的字段。


    #发表评论
    提交评论