MySQL에서 정수(INT) 타입의 숫자를 통화 형식으로 표시하려면 CONCAT() 함수와 FORMAT() 함수를 함께 사용하면 됩니다. FORMAT() 함수는 숫자에 천 단위 구분 기호(콤마)를 자동으로 추가해 주고, CONCAT() 함수는 그 앞에 원하는 통화 기호를 붙여줍니다.
기본 문법
SELECT CONCAT('통화기호', FORMAT(yourColumnName, 소수점자릿수)) AS 별칭 FROM yourTableName;문법 설명
- CONCAT(): 여러 문자열을 하나로 연결하는 함수로, 통화 기호와 포맷된 숫자를 합칩니다.
- FORMAT(): 숫자를 지정한 소수점 자릿수로 반올림하고 천 단위마다 콤마를 삽입합니다.
예제 테이블 생성
실제 동작을 확인하기 위해 간단한 테이블을 만들어 보겠습니다.
mysql> create table AddingCurrencySymbolDemo -> ( -> Amount int -> ); Query OK, 0 rows affected (1.50 sec)
데이터 삽입
INSERT 명령을 사용하여 샘플 데이터를 입력합니다.
mysql> insert into AddingCurrencySymbolDemo values(250); Query OK, 1 row affected (0.22 sec) mysql> insert into AddingCurrencySymbolDemo values(500); Query OK, 1 row affected (0.22 sec) mysql> insert into AddingCurrencySymbolDemo values(1000); Query OK, 1 row affected (0.16 sec) mysql> insert into AddingCurrencySymbolDemo values(750); Query OK, 1 row affected (0.18 sec)
저장된 데이터 확인
SELECT 문으로 테이블의 모든 레코드를 조회해 보겠습니다.
mysql> select * from AddingCurrencySymbolDemo;
실행 결과는 다음과 같습니다.
+--------+ | Amount | +--------+ | 250 | | 500 | | 1000 | | 750 | +--------+ 4 rows in set (0.00 sec)
INT를 통화 형식으로 변환하기
이제 달러($) 기호를 붙여 통화 형식으로 변환하는 쿼리를 실행합니다.
mysql> select concat('$', format(Amount, 0)) as AddedCurrency from AddingCurrencySymbolDemo;변환된 결과는 다음과 같습니다. 1000이라는 값이 자동으로 '$1,000'처럼 콤마가 포함된 형태로 출력되는 것을 확인할 수 있습니다.
+---------------+ | AddedCurrency | +---------------+ | $250 | | $500 | | $1,000 | | $750 | +---------------+ 4 rows in set (0.00 sec)
참고 사항
다른 통화 기호를 사용하고 싶다면 CONCAT() 함수 안의 '$' 부분을 '₩', '€', '£' 등 원하는 기호로 바꾸면 됩니다. 예를 들어 한국 원화로 표시하려면 다음과 같이 작성합니다.
SELECT CONCAT('₩', FORMAT(Amount, 0)) AS WonCurrency FROM AddingCurrencySymbolDemo;또한 FORMAT() 함수의 두 번째 인자를 조절하면 소수점 이하 자릿수도 지정할 수 있습니다. 예를 들어 소수점 둘째 자리까지 표시하려면 FORMAT(Amount, 2)처럼 사용하면 됩니다.