728x90
PRESENTNNV
구문
PRESENTNNV(cell_reference, expr1, expr2)
목적
PRESENTNNV 함수는 SELECT 문의 model_clause 내에서만 사용할 수 있으며, 오직 모델 규칙의 오른쪽에 있는 경우에만 사용할 수 있습니다. 이 함수는 cell_reference가 model_clause 실행 전에 존재하고 PRESENTNNV가 평가될 때 null이 아닌 경우에는 expr1을 반환합니다. 그렇지 않으면 expr2를 반환합니다. 이 함수는 NVL2와 다릅니다. NVL2는 실행 시간에 데이터를 평가하는 반면에, PRESENTNNV는 model_clause 실행 전 데이터를 평가합니다.
참고:
- 구문 및 의미에 대한 model_clause 및 "Model Expressions"
- 비교를 위한 NVL2
- Oracle Database Globalization Support Guide의 부록 C는 PRESENTNNV 함수가 model_clause의 실행에 따라 반환되는 문자 값의 정렬을 정의하는 정렬 파생 규칙(collation derivation rules)에 대한 정보를 제공합니다.
예제
다음 예에서 만약 2002년도의 Mouse Pad에 대한 판매 내역 행이 존재하며 판매 값이 null이 아니면, 판매 값은 변경되지 않습니다. 행이 존재하고 판매 값이 null이라면 판매 값은 10으로 설정됩니다. 행이 존재하지 않으면 판매 값이 10으로 설정된 행이 생성됩니다.
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
( s['Mouse Pad', 2002] =
PRESENTNNV(s['Mouse Pad', 2002], s['Mouse Pad', 2002], 10)
)
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 3269.09
France Mouse Pad 2002 10
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 9535.08
Germany Mouse Pad 2002 10
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 뷰가 필요합니다. 이 뷰를 생성하려면 "예제"를 참조하세요.
출처: 오라클 레퍼런스
원문 링크: Oracle PRESENTNNV 함수 문서
반응형
'코딩 > 오라클 함수' 카테고리의 다른 글
[오라클 레퍼런스 함수] PREVIOUS - 반복문(ITERATE) 내에서 이전 값 반환 (0) | 2023.08.14 |
---|---|
[오라클 레퍼런스 함수] PRESENTV - model_clause 실행 전에 값의 존재 여부에 따라 값 할당 (0) | 2023.08.14 |
[오라클 레퍼런스 함수] PREDICTION_SET - 예측 결과 세트 반환(확률 및 비용 포함) (0) | 2023.08.14 |
[오라클 레퍼런스 함수] PREDICTION_PROBABILITY - 예측 확률 반환 (분류 및 이상 탐지) (0) | 2023.08.14 |
[오라클 레퍼런스 함수] PREDICTION_DETAILS - 예측 세부 정보 추출 (0) | 2023.08.14 |
댓글