我在一个返回空日期的函数中有一个查询,我有点不明白为什么。
查询
select max(as_of_date)
from thresholds
where as_of_date = (select max(as_of_date)
from thresholds
where as_of_date <= in_as_of_date));
in_as_of_date正在传递给函数,但是正在向传入的日期添加一年。 这是电话:
l_Amount := fmwrk_utl.f_getAmount(inAsOfDate => ADD_MONTHS(l_effective_date,12));
因此,对于这个例子,01-JAN-98的l_effective_date将是01-JAN-99
在阈值表中存在两条记录
AS_OF_DATE | AMOUNT
11-SEP-12 | 50
01_JAN-11 | 40
似乎任何生效日期大于1999的数据都会从阈值表中返回日期。我不明白为什么。任何帮助将不胜感激,谢谢!