"오라클 통화 포맷 함수"의 두 판 사이의 차이
DB CAFE
(새 문서: <source lang=sql> CREATE OR REPLACE FUNCTION FN_CURRENCY_FORMAT ( inValue NUMBER , inCurrency VARCHAR2...) |
|||
84번째 줄: | 84번째 줄: | ||
END FN_CURRENCY_FORMAT; | END FN_CURRENCY_FORMAT; | ||
</source> | </source> | ||
+ | [[category:oracle]] |
2020년 7월 19일 (일) 13:10 기준 최신판
thumb_up 추천메뉴 바로가기
- DBA { Oracle DBA 명령어 > DBA 초급 과정 > DBA 고급 과정 }
- 튜닝 { 오라클 튜닝 목록 }
- 모델링 { 데이터 모델링 가이드 }
CREATE OR REPLACE FUNCTION FN_CURRENCY_FORMAT (
inValue NUMBER
, inCurrency VARCHAR2
, inIncludeComma VARCHAR2 DEFAULT 'Y'
--, inUserFormat VARCHAR2 DEFAULT 'NFM01'
)
RETURN VARCHAR2 IS
v_result VARCHAR2(50) := NULL;
v_format VARCHAR2(50) := NULL;
v_value NUMBER := NULL;
BEGIN
IF inValue IS NULL THEN
RETURN NULL;
END IF;
IF inCurrency IN ('KRW', 'VND', 'JPY', 'THB') THEN
IF inIncludeComma = 'Y' THEN
v_format := 'FM999,999,999,999,990';
ELSE
v_format := 'FM999999999999990';
END IF;
v_value := TRUNC(inValue);
ELSE
IF inIncludeComma = 'Y' THEN
v_format := 'FM999,999,999,999,990.00';
ELSE
v_format := 'FM999999999999990.00';
END IF;
v_value := TRUNC(inValue, 2);
END IF;
RETURN TO_CHAR(v_value, v_format);
EXCEPTION
WHEN OTHERS THEN
-- Consider logging the error and then re-raise
RETURN inValue;
END FN_CURRENCY_FORMAT;