SQL
[SQL] SQL Server 에서 다루는 자료형 모음
권벡터
2023. 6. 11. 15:00
숫자형
자료형 | 데이터 크기 (1 byte) | 숫자 범위 | 설명 |
bit | 1 | 0,1,NULL | * boolean 형식으로 true or false으로 사용 |
tinyint | 1 | 0 ~ 255 | * 정수 데이터를 사용하는 정확한 숫자 자료형 * 숫자를 저장할 때 많이 사용 |
smallint | 2 | - 32.767 ~ 32,767 | |
int | 4 | - (2^32) ~ (2^31) -1 | |
bigint | 8 | - (2^63) ~ (2^63) -1 | |
decimal(p,s) | 5 ~ 17 | - (10^38) +1 ~ (10^38) -1 | * 전체 자릿수와 소수 자릿수가 고정된 숫자 * 최대 38자리 사용 |
numberic(p,s) | 5 ~ 17 | - (10^38) +1 ~ (10^38) -1 | |
float(n) | 4 ~ 8 | - 1.79E+308 ~ 1.79E+308 | |
real | 4 | - 3.40E +38 ~ 3.40E+38 | * 부동 소수점 숫자 데이터 |
smallmoney | 4 | 약 - 21억 ~ 21억 | * 통화 단위에 주로 사용 * 1/10000 까지 정확하게 표현 가능 |
money | 8 | - (2^63) ~ (2^63) -1 |
문자형
자료형 | 데이터 크기 (byte) | 설명 |
char(n) | 0 ~ 8000 | * 고정 길이 문자열 |
nchar(n) | 0 ~ 8000 | * 유니코드 고정 길이 문자열 (예: 한글, 특수문자) * 4000자 입력 가능 |
varchar(n:max) | 0 ~ 2^31 - 1 (2GB) | * 가변 길이를 문자열로 n만큼의 크기 지정 가능 * max를 지정하면 2GB까지 가능 |
nvarchar(n:max) | 0 ~ 2^31 -1 | * 유니코드 가변 길이 문자열 |
binary(n) | 0 ~ 8000 | * 고정 길이의 이진 데이터값 |
varbinary(n:max) | 0 ~ 2^31 -1 | * 가변 길이 이진 데이터값 * N을 사용하면 1 ~ 8000 까지 크기 지정 가능 * max를 지정하면 2GB까지 크기 지정 가능 * 동영상 이미지 등 저장에 사용 |
날짜, 시간형
자료형 | 데이터 크기 (byte) | 정확도 | 설명 |
time | 3 ~ 5 | 100 ns | 00:00:00.0000000 ~ 23.59:59.9999999까지 저장 |
date | 3 | 1 day | 0001-01-01 ~ 9999-12-31까지 저장되며 날짜만 저장 |
smalldatetime | 4 | 1 minuite | 1900-01-01 00:00:00 ~ 2079-06-06 23.59:59 까지 저장 |
datetime | 8 | 0.00333 s | 1753-01-01 00:00:00.000 ~ 9999-12-31 23:59:59.997 까지 저장 |
datetime2 | 6 ~ 8 | 100 ns | DATETIME 형식에서 확장된 형식 0001-01-01 00:00:00.0000000 ~ 9999-12-31 23:59:59.9999999 까지 저장 |
datetimeoffset | 8 ~ 10 | 100 ns | 0001-01-01 00:00:00.0000000 ~ 9999-12-31 23:59:59.9999999 까지 저장 타임존 시간을 함께 저장 |
참고
문자 형 변환 가능 여부 테이블
from\to | DATETIME | FLOAT | DECIMAL | INT | BIT | NVARVCHAR | VARCHAR |
DATETIME | X | X | X | X | O | O | |
FLOAT | O | O | O | O | O | O | |
DECIMAL | O | O | O | O | O | O | |
INT | O | O | O | O | O | ||
BIT | O | O | O | O | O | ||
NVARVCHAR | O | O | O | O | O | O | |
VARCHAR | O | O | O | O | O | O |