안녕하세요.
금액관련으로 문의드립니다.
20000으로 저장된 데이터를 2만원 등으로 표시를 해야하는데
한글로 변환 시 이만원으로 밖에 되지않아 문의드립니다.
예) 20000 -> 2만원 / 110000 -> 11만원 / 15000 -> 1만5천원
해결방법이 있으신 분들은 공유 부탁드립니다.
감사합니다.
모호한 부분이 있네요.
- 11만원 VS 1십1만원
- 300만원 VS 3백만원
- 321만원 VS 3백2십1만원
- 5321원 VS 5천3백2십1원
- 1만5000원 VS 1만5천원
통일된 기준이 있어야 합니다.
앗 왼쪽기준으로 표시하고 싶습니다.
WITH t AS
(
SELECT 123456789012345 amt FROM dual
UNION ALL SELECT 29000 FROM dual
UNION ALL SELECT 20000 FROM dual
UNION ALL SELECT 309840 FROM dual
UNION ALL SELECT 200000000 FROM dual
)
SELECT amt
, DECODE(a1, 0, '', a1 || '조')
|| DECODE(a2, 0, '', a2 || '억')
|| DECODE(a3, 0, '', a3 || '만')
|| DECODE(a4, 0, '', a4)|| '원' v
FROM (SELECT amt
, FLOOR(amt / 1000000000000) a1
, FLOOR(MOD(amt, 1000000000000) / 100000000) a2
, FLOOR(MOD(amt, 100000000) / 10000) a3
, MOD(amt, 10000) a4
FROM t
)
;
-- http://gurubee.net/lecture/2224