728x90
ITERATION_NUMBER
구문
ITERATION_NUMBER
목적
ITERATION_NUMBER 함수는 SELECT 문의 model_clause에서만 사용할 수 있으며, model_rules_clause에서 ITERATE(number)가 지정된 경우에만 사용할 수 있습니다. 이 함수는 모델 규칙을 통해 완료된 반복(completed iteration)을 나타내는 정수를 반환합니다. ITERATION_NUMBER 함수는 첫 번째 반복 중에는 0을 반환합니다. 이후의 각 반복에서는 iteration_number에 1을 더한 값과 동일한 값을 반환합니다.
참고:
model_clause와 "Model Expressions"에 대한 구문과 의미에 대해서는 다음을 참조하세요.
예제
다음 예제는 1998년과 1999년의 Mouse Pad의 매출을 각각 2001년과 2002년의 Mouse Pad의 매출로 할당합니다.
SELECT country, prod, year, s
FROM sales_view_ref
MODEL
PARTITION BY (country)
DIMENSION BY (prod, year)
MEASURES (sale s)
IGNORE NAV
UNIQUE DIMENSION
RULES UPSERT SEQUENTIAL ORDER ITERATE(2)
(
s['Mouse Pad', 2001 + ITERATION_NUMBER] =
s['Mouse Pad', 1998 + ITERATION_NUMBER]
)
ORDER BY country, prod, year;
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 2509.42
France Mouse Pad 2002 3678.69
France Standard Mouse 1998 2390.83
France Standard Mouse 1999 2280.45
France Standard Mouse 2000 1274.31
France Standard Mouse 2001 2164.54
Germany Mouse Pad 1998 5827.87
Germany Mouse Pad 1999 8346.44
Germany Mouse Pad 2000 7375.46
Germany Mouse Pad 2001 5827.87
Germany Mouse Pad 2002 8346.44
Germany Standard Mouse 1998 7116.11
Germany Standard Mouse 1999 6263.14
Germany Standard Mouse 2000 2637.31
Germany Standard Mouse 2001 6456.13
18 rows selected.
앞선 예제에서는 sales_view_ref라는 view가 필요합니다. 이 뷰를 생성하려면 "The MODEL clause: Examples"를 참조하세요.
출처: 오라클 레퍼런스
원문 링크: Oracle ITERATION_NUMBER 함수 문서
반응형
'코딩 > 오라클 함수' 카테고리의 다른 글
[오라클 레퍼런스 함수] JSON_ARRAYAGG - JSON 배열 생성 (0) | 2023.08.07 |
---|---|
[오라클 레퍼런스 함수] JSON_ARRAY - JSON 배열 생성 (0) | 2023.08.07 |
[오라클 레퍼런스 함수] INSTR - 문자열에서 부분 문자열 위치 반환 (0) | 2023.08.06 |
[오라클 레퍼런스 함수] INITCAP - 단어 첫 글자 대문자, 나머지 소문자로 변환 (0) | 2023.08.06 |
[오라클 레퍼런스 함수] HEXTORAW - 16진수 숫자를 raw 값으로 변환 (0) | 2023.08.06 |
댓글