40강 SQL 초석 다지기 : PostgreSQL Boolean Data Type
PostgreSQL
SQL 초석 다지기 40강 시작합니다.
본 강의는 PostgreSQL Tutorial을 참조합니다. https://www.postgresqltutorial.com/ |
이번 시간에는
▶ PostgreSQL Data Types
에 대해서 알아보는 첫 시간입니다.
39강 까지 학습하면서 SQL에 어느 정도 익숙해졌지요. SELECT, INSERT, UPDATE, DELETE를 배웠으니 만들어진 데이터베이스를 가지고 노는 건 되겠지요. 이제 좀 더 깊이 있게 SQL을 파 보도록 하겠습니다. 그래서 제목에도 'SQL 초석 다지기'라고 해보았습니다.. |
Overview of PostgreSQL data types
PostgreSQL은 다음과 같은 데이터 유형을 지원합니다.
● Boolean
● 문자 유형 : char, varchar, text ...
● 숫자 유형 : integer, numeric, serial ...
● 시간 유형 : date, time, timestamp ...
● UUID : 범용 고유 식별자를 저장
● Array : 배열 문자열, 숫자 등을 저장하기 위한 배열
● JSON : JSON 데이터를 저장
● hstore : 키-값 쌍을 저장
● Special types : 네트워크 주소 및 기하학적 데이터와 같은 특수 유형
위에 언급된 것들을 지금부터 하나씩 살펴보도록 하겠습니다.
첫 번째로 Boolean type에 대해서 알아보겠습니다.
Introduction to the PostgreSQL Boolean type
PostgreSQL은 true, false 및 NULL의 세 가지 값을 가질 수 있는 단일 부울 데이터 유형을 지원합니다.
PostgreSQL은 부울 값을 데이터베이스에 저장하는 데 1바이트를 사용합니다. Boolean은 BooL로 약어로 쓸 수 있습니다.
표준 SQL에서 부울 값은 TRUE, FALSE 또는 NULL일 수 있습니다. 그러나 PostgreSQL은 TRUE 및 FALSE 값을 처리할 때 매우 유연합니다.
다음 표는 PostgreSQL의 TRUE 및 FALSE에 대한 유효한 리터럴 값을 보여줍니다.
True | False |
true | false |
't' | 'f' |
'true' | 'false' |
'y' | 'n' |
'yes' | 'no' |
'1' | '0' |
선행 또는 후행 공백은 중요하지 않으며 true 및 false를 제외한 모든 상수 값은 작은따옴표로 묶어야 합니다.
PostgreSQL Boolean examples
PostgreSQL 부울 데이터 형식을 사용하는 몇 가지 예를 살펴보겠습니다.
먼저 사용 가능한 제품을 기록하기 위해 새 테이블 stock_availability를 생성합니다.
CREATE TABLE stock_availability (
product_id INT PRIMARY KEY,
available BOOLEAN NOT NULL
);
commit;
둘째, 일부 샘플 데이터를 stock_availability 테이블에 삽입합니다. 우리는 부울 값에 다양한 리터럴 값을 사용합니다.
INSERT INTO stock_availability (product_id, available)
VALUES
(100, TRUE),
(200, FALSE),
(300, 't'),
(400, '1'),
(500, 'y'),
(600, 'yes'),
(700, 'no'),
(800, '0');
commit;
셋째, 다음 문장을 사용하여 제품의 가용성을 확인하십시오.
SELECT *
FROM stock_availability
WHERE available = 'yes';
연산자 없이 부울 열을 사용하여 참 값을 암시할 수 있습니다. 예를 들어 다음 조회는 사용 가능한 모든 제품을 반환합니다.
SELECT *
FROM stock_availability
WHERE available;
마찬가지로 잘못된 값을 찾으려는 경우 부울 열의 값을 유효한 부울 상수와 비교합니다.
다음 쿼리는 사용할 수 없는 제품을 반환합니다.
SELECT *
FROM stock_availability
WHERE available = 'no';
또는 NOT 연산자를 사용하여 다음과 같이 부울 열의 값이 거짓인지 확인할 수 있습니다.
SELECT *
FROM stock_availability
WHERE NOT available;
Set a default value of the Boolean column
기존 부울 열의 기본값을 설정하려면 ALTER TABLE 문에서 SET DEFAULT 절을 사용합니다.
예를 들어 다음 ALTER TABLE 문은 stock_availability 테이블에서 사용 가능한 열의 기본값을 설정합니다.
ALTER TABLE stock_availability
ALTER COLUMN available
SET DEFAULT FALSE;
사용 가능한 열의 값을 지정하지 않고 행을 삽입하는 경우 PostgreSQL에서 FALSE 사용:
INSERT INTO stock_availability (product_id)
VALUES (900);
SELECT *
FROM stock_availability
WHERE product_id = 900;
마찬가지로 테이블을 만들 때 부울 열의 기본값을 설정하려면 다음과 같이 열 정의에서 DEFAULT 제약 조건을 사용합니다.
CREATE TABLE boolean_demo(
...
is_ok BOOL DEFAULT 't'
);
지금까지 PostgreSQL 부울 데이터 유형 및 이를 사용하여 부울 데이터를 저장하는 방법을 배웠습니다.
다음 시간에 만나요.
Do it! SQL을 찾아 주셔서 감사합니다. 공감 ♥ , 댓글이 큰 힘이 됩니다. |
'IT > SQL 기초강좌 (PostgreSQL)' 카테고리의 다른 글
42강 SQL 초석 다지기 : PostgreSQL NUMERIC Type (4) | 2022.12.22 |
---|---|
41강 SQL 초석 다지기 : PostgreSQL Character Types: CHAR, VARCHAR, TEXT (3) | 2022.12.22 |
39강 SQL이 뭐지? PostgreSQL Upsert (3) | 2022.12.21 |
38강 SQL이 뭐지? PostgreSQL DELETE JOIN (2) | 2022.12.21 |
37강 SQL이 뭐지? PostgreSQL DELETE (2) | 2022.12.21 |
댓글