반응형
# 오라클 소수점 처리
- 프로젝트를 하다보면 고객의 요청에 따라 0.7 같이 소수점을 표시 해서 보여줘야 하는 경우가 존재한다.
- 간혹 소수점을 표시하여 처리하는 경우 .5 등의 표시 오류가 발생하는데, 이를 해결하는 방법은 TO_CHAR 와 FM 을 사용하는것이다.
## FM990.99
- 사용방법 : TO_CHAR(표시할숫자, 'FM990.99')
FM
- 좌우 9로 치환된 소수점 이상의 공백 및 소수점 이하의 0 제거.
- FM 이 없는 경우 : 소수점 이상의 숫자는 공백, 소수점 이하의 숫자는 0으로 표시
9
- 해당 자리의 숫자. (가변길이)
- 값이 없는경우 소수점 이상 : 공백 으로 표시.
- 값이 없는경우 소수점 이하 : 0 으로 표시.
- 0이거나 숫자가 존재하지 않으면 값을 버림.
0
- 해당 자리의 숫자. (고정길이)
- 값이 없는경우 : 0으로 표시.
- 고정적으로 숫자의 길이를 표시할 경우 사용한다.
- 숫자의 길이를 맞추고 싶을때 길이만큼 0을 추가.
## 사용 예시
SELECT '0.5' AS A -- 0.05표시
, TO_CHAR('0.05', '999,999') AS B -- 0표시
, TO_CHAR('0.05', '999.999') AS C -- .050표시
, TO_CHAR('0.05', 'FM999.99') AS D -- .05표시
, TO_CHAR('0.05', 'FM990.99') AS E -- 0.05표시
, TO_CHAR('0.05', 'FM900.99') AS F -- 00.05표시
, TO_CHAR('0.05', 'FM990.990') AS G -- 0.050표시
, TO_CHAR('0.05', 'FM990.9900') AS H -- 0.0500표시
FROM DUAL;
반응형
'메모장' 카테고리의 다른 글
[DB2 SQL] 현재일자 기준 차이 구하기 (년, 월, 일) (2) | 2022.12.22 |
---|---|
DB2, 오라클 피벗 관련 LISTAGG (0) | 2022.10.25 |
오라클 트리거 :NEW 값 변경 (BEFORE) (0) | 2022.09.20 |
오라클 트리거 조회 (트리거 활성 상태 등) (0) | 2022.09.20 |
오라클 PL/SQL LOOP문 (0) | 2022.09.19 |