select (SELECT * FROM TABLE(or_in_list_fn('FV52,1101'))) plant_cd from dual
返回
ORA-01427: 单行子查询返回多于一行
where or_in_list_fn returns
FV52
1101
我需要输出
Plant_cd
---------------
FV52
1101
尝试这个:
SELECT column_value AS plant_cd FROM TABLE(or_in_list_fn('FV52,1101'))
而不是从另一个选择返回数据,直接使用内部查询,因为你没有在外部选择中做任何事情
SELECT * FROM TABLE(or_in_list_fn('FV52,1101'))
如果您想在外部选择中进行一些过滤或与另一个表连接,请在查询的 from 子句中使用它,如下所示:
select plant_cd.* from (SELECT * FROM TABLE(or_in_list_fn('FV52,1101'))) plant_cd
您需要让您的子查询返回 1 行和 1 个字段。您可以使用max()
select (SELECT max(yourfield) FROM TABLE(or_in_list_fn('FV52,1101'))) plant_cd from dual