我在SQL语句里调用函数,是可以查询的。
但是我又在另一个函数里调用同样的函数,咋不管用呢。是不是函数里再调用函数有什么要求啊?

解决方案 »

  1.   

    函数调用要把返回值赋给变量,或者在sql中调用。
      

  2.   

    select * from table(AIR_GETO3_8HDATA('''||v_StartTime||''','''||v_EndTime||''','''||List||'''))
    这是我的调用。AIR_GETO3_8HDATA()是一个返回结果集的管道函数。调用它的也是一个返回结果集的管道函数。嵌套调用有问题吗?
      

  3.   

    外层管道函数:
    CREATE OR REPLACE FUNCTION F_CAGOODAVG_D_ZH_AQI (List varchar2,p_StartDate  varchar2,p_EndDate  varchar2,
                                              p_cal number,p_MethodCode   number,usercode  varchar2) RETURN TCA_GETSUBGOODAVG_D_AQI   PIPELINED
    ...end F_CAGOODAVG_D_ZH_AQI;
      

  4.   

    内层函数:
    CREATE OR REPLACE FUNCTION AIR_GETO3_8HDATA(p_StartDate  varchar2,p_EndDate  varchar2,p_SubId  varchar2)RETURN tca_hisdata_1h  PIPELINED...end AIR_GETO3_8HDATA;