我希望每月运行一份报告来提取由特定任务开启日期驱动的数据。
关键字段是' progdate' (其中包含日期' dd / mm / yyyy')。
提取物很可能在本月的最后一周运行,为了本例的目的,我说的是第25个(如果是周末或银行假日,它将在下一个工作日)。
当代码运行时,它需要带回所有' progdate'从两个月前和当月24日的月25日开始返回。 (这两个日期将是固定的,并且从一个月到下一个月不会发生变化,因此将始终涵盖完全相同的时间段)。
即。如果我在10月25日运行它,它将从8月25日到9月24日返回数据。如果我在11月25日运行它,它会返回9月25日到10月24日的数据......依此类推。
我试过了;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="greenCircle"></div>
现在这种工作......如果代码不是在每个月的同一天运行,那么它就会失效。如果是假期或周末,它可能错过一两天的数据(或导致从一次提取到另一次提取的重复)。
关于如何在不使用Sysdate和编码的情况下完成任务,特别是在两个月前的25个月到上个月的第24个月?
非常感谢! :)
答案 0 :(得分:0)
你可以试试这个。
BETWEEN TRUNC(ADD_MONTHS(SYSDATE ,- 2), 'MONTH') + 24
AND TRUNC(ADD_MONTHS(SYSDATE ,- 1), 'MONTH') + 23
如何在不使用Sysdate
的情况下完成任务
如果您的表/架构中有一个包含运行查询的日历日期或营业日期信息,则可以使用。