728x90
SQL Server 2012 버전부터 FORMAT 함수가 추가되었다. 오라클에서는 TO_CHAR 함수를 사용하여 날짜 형식을 문자열로 쉽게 변환을 할 수 있고, MSSQL에서는 CONVER 함수를 사용하여 변환이 가능하지만 조금 아쉬운 면이 있었다.
FORMAT 함수를 사용하여 오라클의 TO_CHAR 함수에서 가능했던 3가지 사용법을 소개한다.
- 날짜 문자열 변환
- 수치값 천단위 콤마
- 찍기수치값 소주점 표시
| 날짜 문자열 변환
SELECT FORMAT(GETDATE(), 'yyyy-MM-dd') AS result1
, FORMAT(GETDATE(), 'yyyy-MM-dd HH:mm:ss') AS result2
오라클에서 날짜를 문자열로 변환하던 비슷한 형식으로 사용이 가능하다.
SELECT FORMAT(GETDATE(), 'yyyyMMdd') AS result1
, FORMAT(GETDATE(), 'HH:mm:ss') AS result2
, FORMAT(GETDATE(), 'hh:mm:ss tt') AS result3
, FORMAT(GETDATE(), 't') AS result4
다양한 날짜 변환 형식이 사용 가능하다.
| 수치값 천단위 콤마 찍기
SELECT FORMAT(123456, '###,###') AS result1
, FORMAT(123456789, '###,###') AS result2
, FORMAT(123456789, '#,#') AS result2
수치값에 #,# 형식을 사용하면 천단위로 콤마(쉼표)를 표시할 수 있다.
| 수치값 소수점 표시
SELECT FORMAT(12345.6, '0.00') AS result1
, FORMAT(1234.56, '0.00') AS result2
, FORMAT(123.456, '0.00') AS result3
소수점 이하에 "0"의 개수만큼 소수점을 표시한다.
result1 : 소수점 이하가 1자리지만 형식이 두 자리까지 표시했으므로 빈값은 "0"으로 표시한다.
result3 : 소수점 이하를 2자리 까지 표시하도록 하면 반올림하여 소수점을 표시한다.
SELECT FORMAT(1234.56, '0.0') AS result1
, FORMAT(1234.56, '0.00') AS result2
, FORMAT(1234.56, '0.000') AS result3
'DataBase > MSSQL' 카테고리의 다른 글
[MSSQL] 날짜, 시간 더하기 빼기 (DATEADD) (0) | 2022.07.11 |
---|---|
[MSSQL] DATENAME 함수 사용법 (요일, 분기, 날짜분리) (0) | 2022.04.19 |
[MSSQL] ROLLUP 사용법 (소계, 합계) (0) | 2022.04.19 |
[MSSQL] 조인 방법 쉽게 정리 (INNER JOIN, OUTER JOIN) (0) | 2022.04.19 |
[MSSQL] IIF 함수 사용법 (CASE, DECODE) (0) | 2022.04.15 |
댓글