Oracle SQL日期获取上个季度的第一天和上个季度的最后一天

Posted

技术标签:

【中文标题】Oracle SQL日期获取上个季度的第一天和上个季度的最后一天【英文标题】:Oracle SQL date getting first day of last quarter and last day of last quarter 【发布时间】:2017-07-13 09:53:26 【问题描述】:

如果文件加载到系统中,我被要求提供 Oracle PL/SQL 解决方案 例如,在 2017 年 1 月 1 日至 2017 年 3 月 31 日之间,我应该 从上个季度创建了两个日期,一个加载的 from date 2016 年 10 月 1 日并加载 迄今为止 2016 年 12 月 31 日。这应该是未来证明意味着它应该可以在未来几年工作,所以如果一个文件被加载到系统中,比如说 2019 年 8 月 21 日,它应该有2019 年 4 月 1 日的开始日期和 2019 年 6 月 30 日的至今

这应该是一个 PL/SQL 解决方案,很可能是一个向主程序返回两个日期的过程,并且返回的 to and from date 应该是 DD/MM/YYYY 的格式。 p>

提前致谢。

【问题讨论】:

你到目前为止所尝试过的可以分享一下吗? 【参考方案1】:

这个解决方案怎么样?

SELECT 
    TO_CHAR(ADD_MONTHS(TRUNC(SYSDATE, 'Q'), -3), 'DD/MM/YYYY') AS output_from_date,
    TO_CHAR(TRUNC(SYSDATE, 'Q')-1, 'DD/MM/YYYY') AS output_to_date
FROM dual;

OUTPUT_FROM_DATE    OUTPUT_TO_DATE
01/04/2017          30/06/2017

【讨论】:

成功了!提供上一个完整季度的开始和结束日期。

以上是关于Oracle SQL日期获取上个季度的第一天和上个季度的最后一天的主要内容,如果未能解决你的问题,请参考以下文章

在c#中获取上个月的第一天和最后一天的日期

获取一个季度的第一天和最后一天以及 2 个季度的日期

js如何获取上个月第一天和最后一天

如何使用 Carbon 获取上个月的第一天和最后一天 - Laravel

oracle sql 最近5个季度的最后一天

获取本月、本季、本年第一天和最后一天等等sql(sql server)