ORA-00907:缺少右括号,从{function}中选择*

1 oracle oracle11g

我正在尝试运行以下查询.
select * from table(PK_ADMIN_REPORT.FN_GET_APPS_RECIEVED_OFFER(:CATALOG_YEAR IN NUMBER));
但它说"ORA-00907:错过右括号".

Ale*_*ole 5

FN_GET_APPS_RECIEVED_OFFER(:CATALOG_YEAR IN NUMBER)看起来像一个函数声明 ; 当你传入参数时,你不会包含参数的方向和类型.所以它可能应该是:

select * from table(PK_ADMIN_REPORT.FN_GET_APPS_RECIEVED_OFFER(:CATALOG_YEAR));
Run Code Online (Sandbox Code Playgroud)

ORA-00907错误并不一定意味着缺少括号,它通常(或通常)指示一些通用语法错误.在这种情况下,它预计关闭)后立即或逗号(:CATALOG_YEAR,但它看到的IN NUMBER,而不是在这一点上.这不是括号的数量,而是它们所抱怨的地方.