본문 바로가기
DataBase/mssql

MSSQL : FORMAT함수

by 노랑파랑 2023. 6. 7.
반응형

2023.06.02 - [DataBase/mssql] - CONVERT, FORMAT함수 : 날짜(DATE) 포맷 변환

 

CONVERT, FORMAT함수 : 날짜(DATE) 포맷 변환

1.CONVERT CONVERT 함수 CONVERT 함수는 데이터 형식을 변환하기 위해 사용된다. 날짜와 시간 데이터 형식을 변환하는 데 자주 사용되며, 다양한 날짜 및 시간 형식을 지원하고있다. CONVERT 함수의 기본

bravesuccess.tistory.com

위 포스팅을 작성 중에 FORMAT 함수가 다양한 서식 변환을 제공하여 더 자세히 알아보았더니, FORMAT 함수는 날짜, 숫자, 문자열, 시간 외에도 다른 데이터 유형에 대한 서식 지정을 제공하고 있었다.

때문에 FORMAT 함수를 사용하여 다양한 데이터 유형 변환 예제를 확인하며 내용을 정리해보았다.

 

1. 숫자 데이터 변환

1. 통화 형식 변환

통화 기호, 천 단위 구분 콤마 및 소수점 자릿수를 포함하여 숫자를 서식화할 수 있다.

SELECT FORMAT(12345.6789, 'C') AS currency;
--₩12,346

SELECT FORMAT(12345.6789, 'C', 'en-US') AS currency;
--$12,345.68

위의 예제를 보면 'C'는 통화 형식을 의미하며, C+소수점자리숫자 형식으로 옵션 작성이 가능한 것으로 보인다. 쿼리 결과는 통화 기호 + 숫자로 표시된다. 시스템 국가에 따라 결과가 다르므로 3번째 옵션으로 언어및국가를 넣어주면 해당 통화 기준으로 결과가 표시된다.

 (123.456,'C', 'en-US')
-> $123.46

(123.456, 'C', 'fr-FR')
-> 123,46 €

(123.456 ,'C', 'ja-JP')
-> ¥12,346

(12345.6789, 'C3', 'en-US')
-> $12,345.679

(12345.6789, 'C4', 'fr-FR')
-> 12 345,6789 €

(12345.6789, 'C2', 'ja-JP')
-> ¥12,345.68

 

 

2. 백분율 형식으로 변환

FORMAT 함수를 사용해 퍼센트 기호와 소수점 자릿수를 지정하여 숫자를 백분율 형식으로 변환할 수도 있다.

SELECT FORMAT(0.75, 'P') AS percentage;
--75.00%

위의 예제에서 'P'는 백분율 형식을 의미하며, P+소수점자리 숫자로 소수점 지정이 가능하다. P옵션의 결과는 소수점 둘째 자리까지 표시되고 마지막에 % 기호가 붙습니다. 

해당 옵션도 통화와 마찬가지로 시스템 국가에 따라 결과가 다를 수 있으며, 3번째 옵션으로 지정 가능하다.  

 

 

3. 숫자 형식변환

FORMAT 함수에서는 숫자 형식 변환에 서식 문자열을 조합하여 사용할 수 있다. 

고정 소수점을 표현할 경우 아래와 같이 사용한다.

SELECT FORMAT(123.456789, '0.00') AS decimal;
--123.46

위 예제에서 0.00은 소수점 2자리 수까지 고정하며 그 이후의 빈값은 0으로 채운다. 

(12.3, '0.00')
-> 12.30
--> 뒤를 0으로 채운다.

(12.345, '0.00')
-> 12.35
--> 반올림

 

SELECT FORMAT(1234.56789, '0.##') AS decimal;
--1234.57

위의 예제와 같이 소수점 이하 자릿수 제한할 수 있다.  '0.##'은 소수점 이하 자릿수를 최대 두 자리까지 표시한다는 것이다. 따라서 결과는 1234.57로 표시된다.

또는 아래와 같이 숫자에 천 단위 구분 기호를 포함할 수 있다.

SELECT FORMAT(1234567.89, '#,##0.00') AS thousand;
--1,234,567.89

SELECT FORMAT(1234567.89, '#,#') AS thousand;
--1,234,568

 

 

반응형