develop

오라클 PIPELINED. Type은 RECORD를 사용.

파드파드 2018. 9. 7. 08:29
반응형

-- Header

   TYPE out_rec IS RECORD (

     OBJID  varchar2(10),

     FILENM varchar2(10)

   );

   

   TYPE TEXT_TABLE_TYPE IS TABLE OF out_rec;   

   

   FUNCTION FN_GET_OBJID ( IN_AB          IN VARCHAR2,

                           IN_BC           IN VARCHAR2 )

   RETURN TEXT_TABLE_TYPE PIPELINED;

   

-- body

    FUNCTION FN_GET_OBJID ( IN_AB          IN VARCHAR2,

                            IN_BC          IN VARCHAR2 )

    RETURN TEXT_TABLE_TYPE PIPELINED

    IS

            

     out_row out_rec;

V_V1 varchar2(10);

V_V2 varchar2(10);


    BEGIN

      

      SELECT A.CD, A.EF INTO V_V1, V_V2

      FROM tab A

      WHERE AB = IN_AB

      AND ROWNUM =1;

      

      out_row.objid :=  V_V1;

      out_row.FILENM := V_V2;      

      

           PIPE ROW(out_row);


      RETURN ;

    END;

반응형