SQL/MySQL

MySQL 금액 타입(INT), 숫자 천단위 콤마 찍기 FORMAT 함수 예시

진리뷰 2023. 9. 4. 09:00
반응형

 

 

MySQL-금액 타입(INT)-숫자-천단위-콤마-찍기-FORMAT-함수-예시-썸네일
금액 데이터 타입, 천단위(세자리) 콤마 FORMAT함수

 

 

이 글은 금액 입력에 주로 쓰는 데이터 타입인 INT와 BIG INT,

천 단위 콤마 찍을 때 사용하는 FORMAT 함수 설명과 예시를 담고 있습니다.

 

 

MySQL 금액 타입(INT)

 

금액 데이터 타입은 INT를 주로 씁니다.

사실 데이터 타입은 상황과 필요에 따라 다르게 설정하기에, '이렇게 해야 한다'라고 할 수는 없습니다.

그래서 MySQL 데이터 입력 시, 금액은 어떤 타입으로 설정해야 하는가.. 고민했었습니다.

 

그런데 금액 DB에 콤마를 입력하면 문자열이 되기에, 숫자 정렬과 결과가 다를 수 있습니다.

또한 콤마 없이 금액만 검색할 경우 문제가 생기는 등 복잡해집니다.

그래서 금액은 콤마 없이 데이터를 입력하며, INT를 자주 사용합니다.

 

 

숫자형 데이터 타입 INT, BIGINT

 

INT는 숫자 입력 시 설정하는 데이터 타입입니다.

크기 4Byte,  정수 입력,

-2147483648 ~ +2147483647까지 입력 가능합니다.

 

한편, 더 큰 금액을 자주 다루는 경우에는 BIGINT로 설정하기도 합니다.

BIGINT의 크기 8Byte, 정수 입력, -9223372036854775808 ~ +9223372036854775807까지 입력 가능합니다.

 

 

숫자 천 단위 콤마 찍기

 

콤마 없이 숫자만 입력하면, 값을 읽어내는 것은 불편합니다.

그래서 FORMAT함수를 사용하여, 숫자 천 단위(3자리)마다 콤마 찍힌 산출물을 얻을 수 있습니다.

 

 

FORMAT 함수 사용 방법

 

소수점 없이 표현하고 싶다면, FORMAT(컬럼명, 0)으로 입력합니다.

MySQL-천단위-콤마-FORMAT-함수-사용-방법
숫자 천단위 콤마 FORMAT 함수

 

 

천 단위 콤마 찍기 FORMAT 함수 예시

 

SELECT cmf
     , party_nm
     , 일시불
FROM card_tran;

 

 

>> card_tran 테이블에서 cmf, party_nm, 일시불 보여줘.

결과는 일시불 컬럼에 콤마 없는 1234041입니다.

 

 

MySQL-천단위-콤마-없는-FORMAT-함수-예시
콤마 안 찍은 예시

 

 

SELECT cmf
     , party_nm
     , FORMAT(일시불, 0) AS 일시불
FROM card_tran;

 

 

>> card_tran 테이블에서 cmf, party_nm, 일시불 보여주되, 일시불 컬럼은 콤마 찍어줘.

위와 달리, 일시불 컬럼에서 콤마 찍힌 1,234,041이 보입니다. 

 

 

MySQL-천단위-콤마-FORMAT-함수-예시
FORMAT 예시

 
반응형
top