如何获取最近的6个日期(最大日期)

问题描述 投票:-1回答:3

我需要计算最近6个日期

我的代码是

select DUE_DATE, count(*)
from DATA
group by DUE_DATE
03/24/2018    10
03/17/2018    20
03/10/2018    15
03/03/2018    23
02/24/2018    42
02/17/2018    32
02/10/2018    15
02/03/2018    17
01/27/2018    23
sql oracle-apex oracle-apex-5 oracle-apex-5.1
3个回答
1
投票
select DUE_DATE, count(*) from DATA group by DUE_DATE order by DUE_DATE desc limit 6

0
投票
  1. 最简单的情况是,如果每个日期都显示出来,并且/或者您仅对最近的6个日期感兴趣,无论它们是否出现在您的表中:

    select DUE_DATE, count(*)
      from DATA
     where DUE_DATE >= trunc(sysdate) - 5
     group by DUE_DATE
     order by DUE_DATE desc
    

    ((注意:不会显示在表格中的日期)。


  1. 另一方面,如果您需要表中日期子组中的6个最新日期,那么您首先需要一个子查询来获取这些日期,然后只使用这些日期的计数:] >

    select DUE_DATE, count(*)
      from DATA
     where DUE_DATE in (select distinct DUE_DATE
                          from DATA
                         order by DUE_DATE desc limit 6)
     group by DUE_DATE
    

  2. 希望我能帮助!


0
投票

您是否正在寻找fetch first

© www.soinside.com 2019 - 2024. All rights reserved.