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

[오라클 SQL 함수] PREVIOUS 함수

by 기서무나구물 2021. 10. 19.

포스팅 목차

     

    PREVIOUS

     


    문법

     

    previous::=

     


    목적

    PREVIOUS함수는 행 상호 간 계산에 유용하다. 이 함수는 SELECT문장의 model_clause과 model_rules_clause의 ITERATE.. [UNTIL] 구문에서 이용될 수 있다. 각 iteration의 초기에 cell_reference의 값을 반환한다.

     


    예제

    다음 예제는 iteration의 초기와 마지막에서 cur_val의 값 사이의 차이가 1 미만이 될 때까지 최대 1000번 룰을 반복한다.(10->5->2.5->1.25->0.625)

    Oracle Program
    SELECT dim_col, cur_val, num_of_iterations
      FROM (SELECT 1 AS dim_col, 10 AS cur_val FROM dual)
      MODEL
        DIMENSION BY (dim_col)
        MEASURES (cur_val, 0 num_of_iterations)
        IGNORE NAV
        UNIQUE DIMENSION
        RULES ITERATE (1000) UNTIL (PREVIOUS(cur_val[1]) - cur_val[1] < 1)
        (
          cur_val[1] = cur_val[1]/2,
          num_of_iterations[1] = num_of_iterations[1] + 1
        );

     

    Results
       DIM_COL    CUR_VAL NUM_OF_ITERATIONS
    ---------- ---------- -----------------
             1       .625                 4

     


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

     

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

    댓글