새소식

DB, SQL

DB - 타입 정리

  • -

Numeric types(숫자형 타입)

- 숫자를 나타내기 위해서 사용되는 데이터 타입

- 정수형 타입실수형 타입으로 나뉨

 

A. 정수형 타입

- TINYINT: 최소 -128 ~ 최대 127 까지의 정수를 저장할 수 있는 타입

(TINYINT SIGNED : -128 ~ 127 / TINYINT UNSIGNED : 0 ~ 255)

 

 

- SMALLINT: TINYINT 보다 좀더 큰 범위의 정수

(SMALLINT SIGNED : -32768 ~ 32767 / SMALLINT UNSIGNED : 0 ~ 65535)

 

- MEDIUMINT: MEDIUMINT SIGNED : -8388608 ~ 8388607 / MEDIUMINT UNSIGNED : 0 ~ 16777215

 

- INT: INT SIGNED : -2147483648 ~ 2147483647 / INT UNSIGNED : 0 ~ 4294967295

 

- BIGINT: BIGINT SIGNED : -9223372036854775808 ~ 9223372036854775807

BIGINT UNSIGNED : 0 ~ 18446744073709551615

 

B. 실수형 타입

- DECIMAL: 일반적으로 자주 쓰이는 실수형 타입 중 하나로 보통 DECIMAL(M, D)의 형식으로 나타냄

M은 최대 65, D는 30까지의 값

DECIMAL이라는 단어 대신 DEC, NUMERIC, FIXED 가능

(M은 최대로 쓸 수 있는 전체 숫자의 자리수이고, D는 최대로 쓸 수 있는 소수점 뒤에 있는 자리의 수를 의미)

ex) DECIMAL (5, 2)라면 -999.99 부터 999.99 까지의 실수

 

- FLOAT: -3.402823466E+38 은 (-3.402823466) X (10의 38제곱)

~ -1.175494351E-38 은 (-1.175494351) X (10의 38제곱 분의 1)

 

- DOUBLE: FLOAT에 비해 더 넓은 범위의 수, 정밀도 또한 더 높은 타입

 

 

날짜 및 시간 타입

- DATE: 날짜를 저장하는 데이터 타입 / 날짜는 ’2020-03-26’ 이런 형식의 연, 월, 일 순으로 값을 나타냄

 

- DATETIME: 날짜와 시간을 저장하는 데이터 타입 / ’2020-03-26 09:30:27’ 이런 식으로 연, 월, 일, 시, 분, 초를 나타냄

 

- TIMESTAMP: 날짜와 시간을 저장하는 데이터 타입 / TIMESTAMP 타입은 타임 존(time_zone) 정보도 함께 저장

(UTC/국제 표준 시 와 관련 있음)

 

 

문자열 타입

- CHAR: 문자열을 나타내는 기본 타입으로 Character의 줄임말

ex) CHAR(30): 최대 30자의 문자열 저장 가능, 괄호 안에는 0부터 255까지의 숫자 가능

 

- VARCHAR: 문자열의 최대 길이를 지정할 수 있는 문자열 타입 / 괄호 안에 최소 0부터 최대 65,535 (2^16 − 1) 까지 가능

CHAR는 고정 길이 타입 VARCHAR는 가변 길이 타입

CHAR(10)은 어떤 길이의 문자열이 저장되더라도 항상 그 값이 10만큼의 저장 용량을 차지

VARCHAR(10)의 경우 만약 값이 ‘Hello’ 이런 5자라면 저장 용량도 5만큼 차지

VARCHAR 타입으로 값이 저장될 때는 해당 값의 사이즈를 나타내는 부분(1byte 또는 2byte)이 저장 용량에 추가

 

- TEXT: 최대 65535 자까지 저장 / 정말 길이가 긴 문자열을 저장하려면 TEXT 계열의 타입을 써야 함

 

 

'DB, SQL' 카테고리의 다른 글

DB - 인덱스  (0) 2023.03.31
DB - 정규화  (0) 2023.03.31
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.