반응형
오라클에서 소수점이 0.1 이렇게 있을 때, 일반적으로 출력하려고 하면 0.1이 아닌 .1로 표기가 된다. 이 방법은 RTRIM과 TO_CHAR 함수를 사용하여 소수점 0.1을 출력할 수 있다.
오라클(Oracle) 소수점 0. 표시하는 방법(RTRIM, TO_CHAR)
1. TO_CHAR('FM9990.99')
소수점 0.을 표기하기 위해서는 TO_CHAR(값, 'FM9990.99')를 많이 사용한다.
SELECT TO_CHAR(0.12345) AS AA
, TO_CHAR(0.12345, 'FM999.99') AS AB
, TO_CHAR(0.12345, 'FM990.99') AS AC
, TO_CHAR(0.12345, 'FM999.999') AS AD
, TO_CHAR(0.12345, 'FM990.9999') AS AE
, TO_CHAR(0.12345, 'FM990.99999') AS AE
FROM DUAL;
0.12345라는 값이 있을 때, FM999를 하면 맨 뒷자리가 아무 값이 없으면 0을 표기 하지 않고, FM990을 하면 값이 없어도 0을 표기한다.
그리고 뒷자리의 .99에 따라서 자리수 표기를 어디까지 할 건지 나타내며, 0.12345가 있을 때 FM990.9999를 할 경우, 5가 반올림이 되어 0.1235가 출력된다.
여기서 주의할 점은 입력받은 값을 자리수보다 작게 FM 정의를 하게 되면 ### 이라는 에러가 발생한다.
SELECT TO_CHAR(0.12345) AS AA
, TO_CHAR(0.12345, 'FM999.99') AS AB
, TO_CHAR(0.12345, 'FM990.99') AS AC
, TO_CHAR(1111111.12345, 'FM999.999') AS AD
, TO_CHAR(0.12345, 'FM990.9999') AS AE
, TO_CHAR(0.12345, 'FM990.99999') AS AE
FROM DUAL;
AD 컬럼의 경우, 값보다 작게 정의를 할 경우 #######을 출력하게 된다.
만약, 소수점 이하의 값이 없을 경우에는 0.1이 아닌 0. 이렇게 표시가 되는데, 이 때 RTRIM을 사용하여 .을 없애주면 된다.
SELECT TO_CHAR(0, 'FM999.99') AS ABB
, RTRIM(TO_CHAR(0, 'FM999.99'), '.') AS AB
FROM DUAL;
반응형
'IT > Oracle' 카테고리의 다른 글
[Oracle] 오라클(Oracle) 문자열 합치는 방법(CONCAT, ||) (0) | 2025.02.25 |
---|---|
[Oracle] 오라클(Oracle)에서 트랜잭션과 락에 대한 경험 정리 (0) | 2025.01.24 |
[Oracle/Orange] 오렌지(Orange for Oracle) dmp 파일 import하는 방법 (0) | 2024.12.19 |
[Oracle/Orange] 오렌지(Orange for Oracle) TNSNAME ORA 설정하기 (0) | 2024.12.17 |
[Oracle/Orange] Windows 11에서 오렌지(Orange for Oracle) 설치하는 방법 (0) | 2024.12.16 |
[Oracle] 오라클(Oracle) ORA-01950: 테이블스페이스에 대한 권한이 없습니다. 문제 해결 방법 (1) | 2024.12.12 |
[Oracle] Windows11 오라클 테이블 스페이스(Table Space) 생성하기 (0) | 2024.12.12 |
[Oracle] Windows11 오라클 삭제하는 방법 (0) | 2024.11.29 |
최근댓글