次のようにOracleでプロシージャを作成しました。
create or replace PROCEDURE SP_X_AVERAGE
(
profile out SYS_REFCURSOR,
rx out SYS_REFCURSOR,
)
as
BEGIN
open profile for
select
avg(to_number(profile_netassets)) AS netassets
from
fgp;
open rx for
select
avg(to_number(a_price)) as twr
from
r_x
where
gq_date <= add_months(to_date(sysdate, 'mm/dd/yyyy'), -12);
END SP_X_AVERAGE;
実行されず、次のエラーが発生します。
ORA-01843: not a valid month
2 番目の SQL で where 条件を削除すると、正常に実行されます。
同じ手順で SQL を使用してセッションを変更しても機能しません。
助けてください。
この手順を sql-developer (ubuntu Oneiric 11) で実行しています。