根据我们是否已超过当月的第一个工作日,尝试将日期过滤到特定范围。
Oracle似乎不喜欢我在使用BETWEEN。
.....什么时候TO_DATE(myDate,'YYYYMMDD')= TO_DATE(SYSDATE-1)-TO_DATE(last_day(add_months(sysdate,-1))+ 6)> 0时的情况然后TO_DATE(最后日期(add_months(sysdate,-1))+ 1,'YYYYMMDD')--AND to_date(TRUNC(SYSDATE)-1,'YYYYMMDD')其他TO_DATE(最后一个日期(add_months(sysdate,-2))+ 1,'YYYYMMDD')--AND to_date(TRUNC(SYSDATE)-1,'YYYYMMDD')结束
请让我知道如何纠正此问题。
如果要在该月的第一个星期一之后的日期,则可以执行:
to_date(my_date, 'YYYYMMDD') >= next_day(trunc(sysdate, 'MM') - 1, 'MONDAY')
trunc(sysdate, 'MM') - 1
给您上个月的最后一天。然后,next_day(..., 'MONDAY')
给您下一个星期一。