如何从五个财政季度开始获取数据

时间:2013-11-13 20:47:05

标签: sql oracle date

我的任务是从五个财政季度开始到目前为止获取数据。这对像我这样的甲骨文新手来说并不容易。我们的财政年度从11月1日开始,因此这构成了另一个层面无论如何,这段代码似乎工作正常。只是想我会分享,谁知道,也许你会发现错误或更好的方式。

2 个答案:

答案 0 :(得分:1)

很少有观察结果。

  • ADD_MONTHS(sysdate - interval '2' year, -3)可简化为sysdate - interval '2-3' year to month
  • TRUNC(date)提供日期输出。所以不需要在它上面使用TO_DATE函数。
  • 我认为ADD_MONTHS(sysdate - interval '2' year, +1)是错误的。它应该只是sysdate - interval '2' year。您可以通过替换来检查 sysdate,日期为Decemeber,date'2013-12-04'

简化查询

select trunc(sysdate - interval '2-3' year to month,'Q')  as beg_qtr,
       trunc(sysdate - interval '2' year,           'Q') - 1  as end_qtr
from dual;

答案 1 :(得分:0)

     select (TO_DATE(TRUNC(ADD_MONTHS(sysdate - interval '2' year, -3),'Q'),
     'DD-MM-YY')) AS BEG_QTR, TRUNC(ADD_MONTHS(sysdate - interval '2' year, +1), 'Q')
-1 AS END_QTR from DUAL