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

我需要计算最近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
dyr91 回答:如何获取最近的6个日期(最大日期)

select DUE_DATE,count(*) from DATA group by DUE_DATE order by DUE_DATE desc limit 6
,
  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
    

希望我能帮上忙!

,

您要寻找fetch first吗?

select DUE_DATE,count(*)
from DATA
group by DUE_DATE
order by DUE_DATE desc
fetch first 6 rows only;
本文链接:https://www.f2er.com/2853973.html

大家都在问