如何获取季度回顾期的数据

时间:2019-03-05 12:33:13

标签: sql oracle11g oracle10g memsql

我有一个贷款表,其中包含从2000年到2019年的多个过帐数据。

我想从当前日期之前获取数据(例如“ 31-DEC-18”),让其回溯4个季度。

因此,应在Oracle中返回季度末30-Sep-18、30-Jun-18、31-Mar-18和31-dec-17的数据,并且查询对于季度回溯期应该是动态的。

在这方面请帮助。

1 个答案:

答案 0 :(得分:0)

我认为您需要以下四个查询:

select * from loan where payment_date >= trunc(sysdate,'Q')-1; -- > 2018-12-31
select * from loan where payment_date >= trunc(trunc(sysdate,'Q')-1,'Q')-1; -- > 2018-09-30
select * from loan where payment_date >= trunc((trunc(trunc(sysdate,'Q')-1,'Q')-1),'Q')-1; -- > 2018-06-30
select * from loan where payment_date >= trunc((trunc((trunc(trunc(sysdate,'Q')-1,'Q')-1),'Q')-1),'Q')-1; -- > 2018-03-31