• PLSQL流函数代码 540页 【我】


    540页 流函数代码

    -- Create table
    create table STOCKTABLE
    (
      TICKER      VARCHAR2(10),
      TRADE_DATE  DATE,
      OPEN_PRICE  NUMBER,
      CLOSE_PRICE NUMBER
    )
    tablespace JTORDER
      pctfree 10
      initrans 1
      maxtrans 255
      storage
      (
        initial 64
        minextents 1
        maxextents unlimited
      );
    
    -- Create table
    create table TICKERTABLE
    (
      TICKER    VARCHAR2(10),
      PRICEDATE DATE,
      PRICETYPE VARCHAR2(1),
      PRICE     NUMBER
    )
    tablespace JTORDER
      pctfree 10
      initrans 1
      maxtrans 255
      storage
      (
        initial 64
        minextents 1
        maxextents unlimited
      );
    
    
    
    CREATE TYPE TickerType AS OBJECT(
         ticker VARCHAR2(10),
         pricedate DATE,
         pricetype VARCHAR2(1),
         price NUMBER);
         
    CREATE TYPE TickerTypeSet AS TABLE OF TickerType;
         
    CREATE PACKAGE refcur_pkg
    IS
       TYPE refcur_t IS REF CURSOR RETURN StockTable%ROWTYPE;
    END refcur_pkg;
    
    
    CREATE FUNCTION stockpivot(dataset refcur_pkg.refcur_t)
             RETURN TickerTypeSet
    IS
        l_row_as_object tickertype := tickertype(NULL,null,null,null);
        l_row_from_query dataset%ROWTYPE;
        retval tickertypeset := tickertypeset();
    BEGIN
        LOOP 
               FETCH dataset
                     INTO l_row_from_query;
               EXIT WHEN dataset%NOTFOUND;
               l_row_as_object.ticker := l_row_from_query.ticker;
               retval.EXTEND;
               retval(retval.LAST) := l_row_as_object;
        END LOOP;
        CLOSE dataset;
        RETURN retval;
    END stockpivot;
    
    
    BEGIN
        INSERT INTO tickertable
             select * from TABLE (stockpivot(CURSOR(SELECT * from stocktable)));
    
    END;
  • 相关阅读:
    shell test -n -z
    java -d64
    shell export
    topngroupcollector
    stat 查看文件修改时间
    随机30道小学计算题02(修改)
    设计四则运算2程序单元测试用例
    学习进度02
    随机30道小学计算题02
    随机30道小学计算题01
  • 原文地址:https://www.cnblogs.com/libin6505/p/11805798.html
Copyright © 2020-2023  润新知