소수점 0이 아닌숫자만 출력되게 하는방법이 있을까요? 0 3 1,846

by RASHID [Oracle 기초] [2012.06.20 13:37:51]


이것 저것 생각해보다가 질문 드립니다.

예를들어  

원래값    --->  출력할 값
-----------------------------------
123,123.4444  -->  123,123.4444 (십이만삼천백이십삼 쩜! 사사사사)
123,123.4440  -->  123,123.444
123,123.4400  -->  123,123.44 
123,123.4000  -->  123,123.4
123,123.0000  -->  123,123

이걸 하고 싶은데 소수자리 끝부터 하나씩 잘라서 0인지 아닌지 판단해서 더하는 방법 말곤

떠오르는게 없네요...

혹시 간단한 방법 없을까요?
by 마농 [2012.06.20 14:59:00]
WITH t AS
(
SELECT 123123.4444 v FROM dual
UNION ALL SELECT 123123.444 FROM dual
UNION ALL SELECT 123123.44 FROM dual
UNION ALL SELECT 123123.4 FROM dual
UNION ALL SELECT 123123 FROM dual
UNION ALL SELECT 0 FROM dual
UNION ALL SELECT 0.1 FROM dual
UNION ALL SELECT 0.01 FROM dual
)
SELECT v
     , RTRIM(TO_CHAR(v, 'fm999,999,990.999999999'), '.') x
  FROM t
;

by RASHID [2012.06.20 18:22:44]
헐 감사합니다 ^^

이렇게 쉬운 방법이.....


by 손님 [2012.06.21 11:08:41]
그냥 rtrim으로 하심 되겠네요
rtrim(column,'0.')
댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입