본문 바로가기
오라클 게시판/오라클 함수

[오라클 함수] CV 함수

by 기서무나구물 2018. 11. 17.

포스팅 목차

    오라클 SQL 함수(Oracle SQL Function) 목록 리스트 링크

     

    o CV

     


    문법

     

    cv::=

     


    목적

    CV함수는 내부행 측정에 대해 유효하다. CV함수는 SELECT 구문의 model구문에서만 이용되고, model 룰의 오른쪽에서만 사용할 수 있다. 룰의 왼쪽 편에서 오른쪽으로 이동한 디멘젼 열의 현재 값을 반환한다.

    이 함수는 디멘젼 열에 대한 상대적 색인을 제공하는 model_clause에서 이용된다. 반환되는 타입은 디멘젼 열의 데이터 타입이다. 만약 인수를 생략하면, 셀 참조 내의 함수의 상대 위치에 상응하는 디멘젼 열이 기본적으로 사용된다.

    CV함수는 셀 참조 이외에서도 사용할 수 있다. 그 경우는 dimension_column이 필요하다.


    예제

    다음 예제는 디멘젼 열(마우스 패드 또는 표준 마우스)의 1999년 과 2000년의 현재 값이 나타내는 제품의 판매 합계를 그 제품의 2001년의 매상에 할당한다.

    Oracle Program
    SELECT country, prod, year, s
    FROM sales_view
    MODEL PARTITION BY (country)
          DIMENSION BY (prod, year)
          MEASURES (sale s)
          IGNORE NAV
          UNIQUE DIMENSION
          RULES UPSERT SEQUENTIAL ORDER
          ( s[FOR prod in ('Mouse Pad', 'Standard Mouse'), 2001] =
            s[CV( ), 1999] + s[CV( ), 2000]
          )
    ORDER BY country, prod, year;

     

    Results
    COUNTRY       PROD                                         YEAR           S
    ----------    -----------------------------------      --------   ---------
    France        Mouse Pad                                    1998     2509.42
    France        Mouse Pad                                    1999     3678.69
    France        Mouse Pad                                    2000     3000.72
    France        Mouse Pad                                    2001     6679.41
    France        Standard Mouse                               1998     2390.83
    France        Standard Mouse                               1999     2280.45
    France        Standard Mouse                               2000     1274.31
    France        Standard Mouse                               2001     3554.76
    Germany       Mouse Pad                                    1998     5827.87
    Germany       Mouse Pad                                    1999     8346.44
    Germany       Mouse Pad                                    2000     7375.46
    Germany       Mouse Pad                                    2001     15721.9
    Germany       Standard Mouse                               1998     7116.11
    Germany       Standard Mouse                               1999     6263.14
    Germany       Standard Mouse                               2000     2637.31
    Germany       Standard Mouse                               2001     8900.45
     
    16 rows selected.

     

    이 예제는 뷰 sales_view가 필요하다. 이 뷰를 생성하기 위해서는 "Interrow Calculations: Examples" 참조.

     

     

      --------------------------------------------  

    오라클 SQL 함수(Oracle SQL Function) 목록 리스트 링크

     

    [SQL, Pandas, R Prog, Dplyr, SQLDF, PANDASQL, DATA.TABLE] SQL EMP 예제로 만나는 테이블 데이터 처리 방법 리스트 링크 링크
    반응형

    댓글