Computer >> 컴퓨터 >  >> 프로그래밍 >> MySQL

MySQL에서 FORMAT() 함수로 통화 형식 데이터를 표시하는 방법

MySQL에서는 FORMAT() 함수를 활용하면 금액 데이터를 천 단위 구분 기호가 포함된 올바른 통화 형식으로 손쉽게 표시할 수 있습니다. 이번 글에서는 실제 예제를 통해 통화 기록을 설정하고 출력하는 전체 과정을 단계별로 살펴보겠습니다.

1. 샘플 테이블 생성하기

먼저 금액을 저장할 DECIMAL 타입의 컬럼을 가진 테이블을 생성합니다.

mysql> create table DemoTable
-> (
-> Amount DECIMAL(15,4)
-> );
Query OK, 0 rows affected (0.75 sec)

2. 테스트 데이터 삽입하기

INSERT 명령어를 사용해 몇 개의 레코드를 테이블에 추가합니다.

mysql> insert into DemoTable values(90948484);
Query OK, 1 row affected (0.13 sec)
mysql> insert into DemoTable values(1000000000);
Query OK, 1 row affected (0.17 sec)
mysql> insert into DemoTable values(1535353536);
Query OK, 1 row affected (0.09 sec)
mysql> insert into DemoTable values(773646463);
Query OK, 1 row affected (0.20 sec)

3. 저장된 데이터 확인하기

SELECT 문으로 테이블의 모든 레코드를 조회해 보겠습니다.

mysql> select *from DemoTable;

위 쿼리를 실행하면 다음과 같은 결과가 출력됩니다.

+-----------------+
| Amount |
+-----------------+
| 90948484.0000 |
| 1000000000.0000 |
| 1535353536.0000 |
| 773646463.0000 |
+-----------------+
4 rows in set (0.00 sec)

4. FORMAT() 함수로 통화 형식 적용하기

이제 MySQL에서 통화 형식을 지정하는 핵심 쿼리를 살펴보겠습니다. FORMAT(Amount, 2)는 소수점 둘째 자리까지 반올림하여 천 단위마다 쉼표(,)를 추가해 주며, CONCAT() 함수로 통화 기호 'USD'를 앞에 붙여줍니다.

mysql> select concat('USD ',format(Amount,2)) as Currency from DemoTable;

실행 결과, USD 통화 기록이 사람이 읽기 좋은 올바른 형식으로 표시됩니다.

+----------------------+
| Currency |
+----------------------+
| USD 90,948,484.00 |
| USD 1,000,000,000.00 |
| USD 1,535,353,536.00 |
| USD 773,646,463.00 |
+----------------------+
4 rows in set (0.23 sec)

정리

FORMAT() 함수와 CONCAT() 함수를 조합하면 원화(KRW), 달러(USD) 등 다양한 통화 형식을 간단하게 구현할 수 있습니다. 참고로 FORMAT() 함수는 반환값이 문자열이므로, 정렬이나 계산이 필요한 경우에는 원본 숫자 컬럼을 사용하는 것이 좋습니다.