반응형
이번 포스팅은 MSSQL에서 소수점관리 반올림, 올림, 내림에 관련하여 ROUND, CEILING, FLOOR에 대해 알아보겠습니다.
ROUND (반올림)
ROUND (값, 반올림 자릿수, 반올림 여부) [반올림 여부는 0은 반올림, 1은 내림]
SELECT ROUND(123.456, 1) --123.500
SELECT ROUND(123.456, 2) --123.460
SELECT ROUND(123.456, 2, 0) --123.460
SELECT ROUND(123.456, 2, 1) --123.450
반올림 자릿수에 양수 값은 소수점 기준으로 반올림합니다.
SELECT ROUND(345.678, 0) --346.000
SELECT ROUND(345.678, -1) --350.000
SELECT ROUND(345.678, -2) --300.000
SELECT ROUND(345.678, -1, 0) --350.000
SELECT ROUND(345.678, -1, 1) --340.000
반올림 자릿수에 음수 값은 정수 기준으로 반올림합니다.
CEILING (올림)
CEILING(값)
SELECT CEILING(123.456) --124
SELECT CEILING(234.567) --235
CEILING은 ROUND와 다르게 정수 값으로만 출력이 됩니다.
FLOOR (내림)
FLOOR(값)
SELECT FLOOR(123.456) --123
SELECT FLOOR(234.567) --234
FLOOR은 CEILING가 마찬가지로 정수값으로만 출력이 됩니다.
FORMAT 함수
SELECT FORMAT(123.456000, '##0.######') --123.456
SELECT FORMAT(123.456000, '##0.##') --123.46
SELECT FORMAT(123.456000, '##0.000000') --123.456000
SELECT FORMAT(0.45600, '##0.######') --0.456
SELECT FORMAT(0.45600, '###.######') --.456
1) 소수점 6자리까지 표현 뒷자리 0값 제거
2) 소수점 2자리까지 반올림으로 표현
3) 소수점 6자리까지 0포함 전부 표현
4) 정수값에 ##0 으로 사용하면 정수값이 0미만 일시 정수값 0으로 표현
정수값에 ### 으로 사용하면 정수값이 0미만 일시 정수값 미표현
여기까지 MSSQL 소수점관리 반올림, 올림, 내림 값에 관련하여 ROUND, CEILING, FLOOR에 대한 포스팅을 마치도록 하겠습니다.
반응형
'개발 Recording > MSSQL' 카테고리의 다른 글
[MSSQL] CRUD 저장 프로시저(Stored Procedure) 작성법 (0) | 2021.12.15 |
---|---|
MSSQL DATEADD() (0) | 2021.11.16 |
[MSSQL] 시간 오래 걸리는 쿼리 성능 분석하는 방법 (0) | 2021.11.13 |
MSSQL GETDATE() date format 변환표 (0) | 2021.11.10 |
[MSSQL] SQL Server Express 및 SSMS 설치 (0) | 2021.11.04 |