zoukankan      html  css  js  c++  java
  • Oracle 带参视图创建于使用

    --1.创建一个package,包中定义两个方法,一个set值的方法,一个get值的方法
    create or replace package VIEW_GET_PRODUCT_YGS is
    --set值方法
    function set_writeday(writeday varchar2) return varchar2;
    --get值方法
    function get_writeday return varchar2;
    end VIEW_GET_PRODUCT_YGS;


    --2.创建package body,实现package中的两个方法
    create or replace package body VIEW_GET_PRODUCT_YGS is
    paramValue varchar2(32);
    -- 给paramValue赋值
    function set_writeday(writeday varchar2) return varchar2 is
    begin
    paramValue := writeday;
    return writeday;
    end;
    --返回paramValue 的值
    function get_writeday return varchar2 is
    begin
    return paramValue;
    end;
    end VIEW_GET_PRODUCT_YGS;

    --3.创建带参数视图 VIEW_GET_PRODUCT_YGS.get_writeday()是从方法中获取传入的参数
    Create view VIEW_GET_PRODUCT_YGS_BTN
    AS
    SELECT YGS,Productid FROM (select NVL( TA.TIME_USED*TA.PNOXS,0) AS YGS,TA.Productid,TA.writeday
    ,row_number() over(partition by TA.Productid order by TA.writeday desc) FPX
    from
    WORKUNIT_SALARY TA --获取不同年数据视图
    WHERE TO_CHAR(TA.writeday,'YYYY') <VIEW_GET_PRODUCT_YGS.get_writeday()
    ) TB WHERE TB.FPX=1;


    Create view VIEW_GET_PRODUCT_YGS_XTN
    AS
    SELECT YGS,Productid FROM (select NVL( TA.TIME_USED*TA.PNOXS,0) AS YGS,TA.Productid,TA.writeday
    ,row_number() over(partition by TA.Productid order by TA.writeday) FPX
    from
    WORKUNIT_SALARY TA --获取相同年数据视图
    WHERE TO_CHAR(TA.writeday,'YYYYMM') <VIEW_GET_PRODUCT_YGS.get_writeday() and TO_CHAR(TA.writeday,'YYYY')=substr(VIEW_GET_PRODUCT_YGS.get_writeday(),0,4)
    ) TB WHERE TB.FPX=1;


    select * from VIEW_GET_PRODUCT_YGS_BTN where VIEW_GET_PRODUCT_YGS.set_writeday('202001') ='202001' ;

  • 相关阅读:
    [APIO 2009] Atm
    Codeforces518 D. Ilya and Escalator
    [POJ2096] Collecting bugs
    [ZOJ3329] One Person Game
    [LightOJ1038] Race to 1 Again
    「NOI2003」逃学的小孩
    [HAOI2006] 旅行
    ☆ [POJ2411] Mondriaan's Dream 「状压DP」
    「POJ3311」Hie with the Pie
    「乘法逆元」 学习笔记
  • 原文地址:https://www.cnblogs.com/Bokeyan/p/12932084.html
Copyright © 2011-2022 走看看