본문 바로가기
DB/MySQL

【MySQL】자료형 tinyint, int, bigint, decimal등 숫자형에 대해

by 융댜 2021. 9. 23.
반응형

MySQLtinyint, int, bigint, decimal 등 자료형(숫자)에 대해

MySQL에서 int(10)이면 10 자릿수를 입력한다고 생각할 수 있지만 그렇지 않습니다.

bigint(20)도 20 자릿수 입력이 아닙니다.

decimal(10,0)가 10 자릿수 입력입니다.

각각의 숫자가 허용하는 값은 다음과 같습니다.

숫자 (NUMERIC)

자료형 바이트 최소치 최대치
TINYINT 1 -128 127
SMALLINT 2 -32768 32767
MEDIUMINT 3 -8388608 8388607
INT 4 -2147483648 2147483647
BIGINT 8 -9223372036854775808 9223372036854775807
DECIMAL


가변

최대 65자리
DECIMAL(5)의 경우: -99999 ~ 99999
DECIMAL(5, 1)의 경우: -9999.9 ~ 9999.9
DECIMAL(5, 2)의 경우: -999.99 ~ 999.99
FLOAT 4 -3.402823466×10^38 3.402823466×10^38
DOUBLE 8 -1.7976931348623157×10^308 1.7976931348623157×10^308
BIT 가변
최대 64비트
이진 데이터 자료형 1비트에서 64비트까지 허용
크기를 지정하지 않으면 1비트(0 또는 1)
REAL DOUBLE이 적용됨
BOOL
BOOLEAN
TINYINT(1)이 적용됨
SERIAL BIGINT(20)이 적용됨

 

그럼 int(10)의 10이란 무엇인가라고 하면 이것은 ZEROFILL지정 시의 자릿수입니다.

예시 : 0000000001

ZEROFILL 지정하면 이전 영을 채워줍니다.

1을 넣으면 "0000000001"입니다. ZEROFILL 지정하지 않으면 int(10)도 bigint(20)도 의미가 없는 숫자입니다.

반응형

댓글