首页 > 解决方案 > 在使用 oracle 中的循环调用用户定义的函数时传递不同的日期作为参数

问题描述

假设我有一个用户定义的函数,它以日期为参数,即 to_date ,from_date 但它有一个限制,它可以提供最大限制为三个月的数据,但我需要一年的数据,我应该如何做到这一点.. 函数

select *
from table(height_DOL.DOL_PKG_DATA.FN_GET_height_DATA(IN_FROM_EFFECTIVE_DATE => '11-JAN-20',IN_TO_EFFECTIVE_DATE => '11-APR-20')); 

借助 oracle 中的循环

标签: sqloracleloopsdateparameters

解决方案


UNION如果无法更改功能,则可以使用:

select *
  from table(height_DOL.DOL_PKG_DATA.FN_GET_height_DATA(IN_FROM_EFFECTIVE_DATE => '11-JAN-20',IN_TO_EFFECTIVE_DATE => '11-APR-20'))
UNION ALL
select *
from table(height_DOL.DOL_PKG_DATA.FN_GET_height_DATA(IN_FROM_EFFECTIVE_DATE => '11-APR-20',IN_TO_EFFECTIVE_DATE => '11-JUN-20'))
UNION ALL
...
...

推荐阅读