[10] PostgreSQL – 데이터 유형
- Boolean
- Character Types [ such as char, varchar, and text]
- Numeric Types [ such as integer and floating-point number]
- Temporal Types [ such as date, time, timestamp, and interval]
- UUID [ for storing UUID (Universally Unique Identifiers) ]
- Array [ for storing array strings, numbers, etc.]
- JSON [ stores JSON data]
- hstore [ stores key-value pair]
- Special Types [ such as network address and geometric data]
Boolean:
PostgreSQL에서 "bool" 또는 "boolean" 키워드는 부울 데이터 유형을 초기화하는 데 사용됩니다. 이러한 데이터 유형은 true, false 및 null 값을 보유할 수 있습니다. 부울 데이터 유형은 다음에 따라 데이터베이스에 저장됩니다.
-- 1, yes, y, t, true 값이 true로 변환됨
-- 0, no, false, f 값은 false로 변환됩니다.
이러한 부울 데이터 유형을 쿼리하면 다음에 따라 변환 및 반환됩니다.
-- t를 참으로
-- f를 거짓으로
-- null을 위한 공간
Character Types:
PostgreSQL에는 CHAR(n), VARCHAR(n) 및 TEXT라는 세 가지 문자 데이터 유형이 있습니다.
-- CHAR(n)은 패딩된 공백이 있는 고정 길이의 문자가 있는 데이터(문자열)에 사용됩니다. 문자열의 길이가 "n" 값보다 작은 경우 나머지 공백은 자동으로 채워집니다. 마찬가지로 길이가 "n" 값보다 큰 문자열의 경우 PostgreSQL에서 오류가 발생합니다.
-- VARCHAR(n)은 가변 길이 문자열입니다. CHAR(n)과 마찬가지로 “n” 길이의 데이터를 저장할 수 있습니다. 그러나 CHAR(n)과 달리 데이터 길이가 "n" 값보다 작은 경우 패딩이 수행되지 않습니다.
-- TEXT는 가변 길이 문자열입니다. 무제한 길이로 데이터를 저장할 수 있습니다.
Numeric:
PostgreSQL에는 정수와 부동 소수점 숫자라는 두 가지 유형의 숫자가 있습니다.
1. Integer:
-- 작은 정수(SMALLINT)의 범위는 -32,768 ~ 32,767이고 크기는 2바이트입니다.
-- 정수(INT)의 범위는 -2, 147, 483, 648 ~ 2, 147, 483, 647이며 크기는 4바이트입니다.
-- Serial (SERIAL)은 PostgreSQL에 의해 열에서 자동으로 생성된다는 점을 제외하면 정수와 유사하게 작동합니다.
2. Floating-point number:
-- float(n)은 n 정밀도의 부동 소수점 숫자에 사용되며 최대 8바이트를 가질 수 있습니다.
-- float8 또는 real은 4바이트 부동 소수점 숫자를 나타내는 데 사용됩니다.
-- 실수 N(d,p)는 뒤에 d자리수와 p개의 소수점자리가 있는 것을 의미하며, 숫자 또는 숫자(d,p)의 일부입니다. 이들은 일반적으로 매우 정확합니다.
Temporal data type:
이 데이터 유형은 날짜-시간 데이터를 저장하는 데 사용됩니다. PostgreSQL에는 5가지 임시 데이터 유형이 있습니다.
-- DATE는 날짜만 저장하는 데 사용됩니다.
-- TIME은 시간 값을 저장하는 데 사용됩니다.
-- TIMESTAMP는 날짜 및 시간 값을 모두 저장하는 데 사용됩니다.
-- TIMESTAMPTZ는 시간대 인식 타임스탬프 데이터 유형을 저장하는 데 사용됩니다.
-- INTERVAL은 기간을 저장하는 데 사용됩니다.
Arrays:
PostgreSQL에서 배열 열은 문자열 배열이나 정수 배열 등을 저장하는 데 사용할 수 있습니다. 일, 일, 심지어 일주일 등의 데이터를 저장할 때 편리할 수 있습니다.
JSON:
PostgreSQL은 JSON과 JSONB(Binary JSON)라는 두 가지 유형의 JSON 유형을 지원합니다. JSON 데이터 유형은 쿼리에서 호출할 때마다 구문 분석되는 일반 JSON 데이터를 저장하는 데 사용됩니다. 반면 JSONB 데이터 유형은 JSON 데이터를 이진 형식으로 저장하는 데 사용됩니다. 테이블 데이터의 인덱싱을 지원하므로 데이터 삽입 프로세스가 느려지는 반면 데이터 쿼리 속도는 한 손으로 빨라집니다.
UUID:
UUID 데이터 유형을 사용하면 RFC 4122에서 정의한 범용 고유 식별자를 저장할 수 있습니다. UUID 값은 SERIAL보다 더 나은 고유성을 보장하며 URL의 id 값과 같이 대중에게 노출된 민감한 데이터를 숨기는 데 사용할 수 있습니다.
UUID는 고유 범용 식별자를 나타냅니다. 이는 데이터베이스 전체에서 고유한 데이터에 고유 ID를 부여하는 데 사용됩니다. UUID 데이터 유형은 RFC 4122에서 정의한 데이터의 UUID를 저장하는 데 사용됩니다. 이들은 일반적으로 신용 카드 정보와 같은 민감한 데이터를 보호하는 데 사용되며 고유성의 맥락에서 SERIAL 데이터 유형에 비해 더 좋습니다.
특수 데이터 유형:
기본 데이터 유형 외에도 PostgreSQL은 네트워크 또는 기하학과 관련된 일부 특수 데이터 유형도 지원합니다. 이러한 특수 데이터 유형은 다음과 같습니다.
- box: It is used to store rectangular box.
- point: It is used to store geometric pair of numbers.
- lseg: It is used to store line segment.
- point: It is used to store geometric pair of numbers.
- polygon:It is used to store closed geometric.
- inet: It is used to store an IP4 address.
- macaddr: It is used to store MAC address.
'공부 > PostgreSQL' 카테고리의 다른 글
[12] PostgreSQL – CHAR 데이터 유형 (0) | 2023.04.12 |
---|---|
[11] PostgreSQL – Boolean 데이터 유형 (0) | 2023.04.12 |
[09] PostgreSQL – 데이터베이스 보기 (Show) (0) | 2023.04.12 |
[08] PostgreSQL – 데이터베이스 이름 바꾸기 (0) | 2023.04.11 |
[07] PostgreSQL – ALTER 데이터베이스 (0) | 2023.04.11 |
댓글