sql 테이블 생성시 데이터타입(길이) 를 설정할 수 있다.
빠르게 훑고 넘어가자 !
문자 저장할 땐 이걸 씁시다
| data type | 저장가능한양 | 특징 |
| CHAR | 0~255자 | CHAR(숫자)로 최대용량 지정가능 |
| VARCHAR | 0~65535자 | VARCHAR(숫자)로 최대용량 지정가능 |
| TEXT | 0~65535자 | |
| TINYTEXT | 0~255자 | |
| MEDIUMTEXT | 0~1600만자 | |
| LONGTEXT | 0~42억자 |
CHAR 타입은 길이 지정시 공백을 추가해서라도 메모리의 고정된 길이 값을 유지한다.
반면 VARCHAR은 가변 String 느낌으로 사용한만큼만 메모리가 사용되기에 메모리 관련 면에서는 효율적이나, 고정된 길이가 필요하다면 CHAR 쓰는게 나을 떄도 있다.
숫자 타입은 이걸 씁시다
| data type | 저장가능한양 | 특징 |
| SMALLINT | -32768 ~ 32767 | |
| MEDIUMINT | -838만 ~ 838만 | |
| INT | -21억 ~ 21억 | |
| BIGINT | -900경 ~ 900경 | |
| FLOAT | -10^38 ~ 10^38 | 소수점 7자리까지 저장가능 (약간의 오차발생함) |
| DOUBLE | -10^308 ~ 10^308 | 소수점 14자리까지 저장가능 (약간의 오차발생함) |
| DECIMAL | 소수점 30자리 포함 최대 65자리 | 오차없이 소수점 저장가능 |
참고로, 양의 숫자만 저장하고 싶으면 칼럼 생성시 unsigned 옵션을 추가하면 된다.
날짜는 이게 있네요
| data type | 저장가능한양 | 특징 |
| DATE | 1000년 ~ 9999년 | YYYY-MM-DD 형식으로 날짜저장가능 |
| TIME | -839 ~ +838시간 | HH:MM:SS 형식으로 시간의 양 저장가능 |
| DATETIME | 1000년 ~ 9999년 | YYYY-MM-DD HH:MM:SS 형식으로 날짜 & 시간 저장가능 |
| TIMESTAMP | 1970년 ~ 2038년 | YYYY-MM-DD HH:MM:SS 형식으로 날짜 & 시간 저장가능한데 보통안씀 |
보통 우리가 사용하는 형태는 DATETIME 형태이다.
이런것도 있다 !
JSON 타입은 JSON, 바이너리데이터는 BLOB, BOOLEAN 등의 데이터 타입도 있고, Postgresql 은 GPS 좌표 정보도 저장이 가능하다.
'DataBase > SQL' 카테고리의 다른 글
| [SQL] 통계 - ALIAS와 집계함수 (0) | 2025.07.16 |
|---|---|
| [SQL] WHERE 을 더 맛있게 쓰는 방법 - LIKE (0) | 2025.07.16 |
| [SQL] 필터링이 필요할 땐 WHERE (0) | 2025.07.16 |
| [RDB] SQL과 NoSQL 기반의 데이터베이스 입문 1장 연습문제 (0) | 2023.10.07 |
| [RDB] SQL과 NoSQL 기반의 데이터베이스 입문 1장 (0) | 2023.10.07 |