MySQL에서 큰 숫자를 '사람이 읽기 쉬운(human readable)' 형태로 표시하려면, 즉 천 단위 구분 기호(콤마)를 포함시키려면 FORMAT() 함수를 사용해야 합니다. 이 함수는 숫자를 지정한 소수점 자릿수에 따라 반올림하고, 천 단위마다 콤마를 추가하여 가독성을 높여줍니다.
1. 예제 테이블 생성
먼저 실습을 위한 테이블을 생성합니다.
mysql> create table DemoTable859(Number bigint); Query OK, 0 rows affected (1.54 sec)
2. 데이터 삽입
INSERT 명령어를 사용하여 테이블에 레코드를 삽입합니다.
mysql> insert into DemoTable859 values(747464646473737); Query OK, 1 row affected (0.45 sec) mysql> insert into DemoTable859 values(3836365366464); Query OK, 1 row affected (0.71 sec) mysql> insert into DemoTable859 values(8376437647433); Query OK, 1 row affected (0.46 sec)
3. 저장된 데이터 확인
SELECT 문을 사용하여 테이블의 모든 레코드를 조회합니다.
mysql> select *from DemoTable859;
위 쿼리는 다음과 같은 결과를 출력합니다.
+-----------------+ | Number | +-----------------+ | 747464646473737 | | 3836365366464 | | 8376437647433 | +-----------------+ 3 rows in set (0.00 sec)
4. FORMAT() 함수로 숫자를 읽기 쉬운 형식으로 변환
다음은 MySQL에서 FORMAT() 함수를 사용하여 숫자를 '사람이 읽기 쉬운' 형식으로 변환하는 쿼리입니다. 두 번째 인자로 0을 지정하면 소수점 이하 자릿수 없이 정수만 표시됩니다.
mysql> select format(Number, 0) AS HumanReadableFormat from DemoTable859;
실행 결과는 다음과 같습니다.
+---------------------+ | HumanReadableFormat | +---------------------+ | 747,464,646,473,737 | | 3,836,365,366,464 | | 8,376,437,647,433 | +---------------------+ 3 rows in set (0.00 sec)
FORMAT() 함수 사용 시 주의 사항
FORMAT() 함수는 편리하지만 몇 가지 유의할 점이 있습니다. 반환 값이 문자열(String) 타입이므로, 변환된 결과를 다시 수치 연산에 사용할 수 없습니다. 또한 지역화(locale) 설정에 따라 구분 기호가 달라질 수 있으므로, 국제화가 필요한 애플리케이션에서는 주의가 필요합니다. 단순히 화면에 표시하는 용도라면 FORMAT() 함수가 가장 간단하고 효과적인 방법입니다.