MySQL - TINYINT: 초보자 가이드
안녕하세요, 미래의 데이터베이스 마법사 여러분! 오늘 우리는 MySQL의 세계로 접수하고 작지만 강력한 데이터 타입을 탐구할 것입니다: TINYINT. 그 크기에 속지 마세요; 이 작은 친구는 작은 정수 값을 효율적으로 저장하는 데 강력한 역할을 할 수 있습니다. 그러면 가상의 안전帽을 쓰고, TINYINT의 세계로 파고들어 보겠습니다!
MySQL TINYINT 데이터 타입
TINYINT는 무엇인가요?
TINYINT는 MySQL의 정수 데이터 타입 중 하나로, 작은 정수 값을 저장하는 데 설계되었습니다. 정수 세계의 소형 자동차라고 생각해 보세요 - 작고 효율적이며 짧은 거리를 주행하기에 적합합니다 (또는 우리의 경우, 작은 숫자를 저장하는 데 적합합니다).
주요 특성
- 크기: TINYINT는 단지 1 바이트의 저장 공간을 사용합니다.
- 범위:
- 서명 있음: -128에서 127
- 무서명: 0에서 255
TINYINT를 사용할 때
TINYINT는 작은 정수 값을 저장해야 하는 시나리오에 완벽합니다. 예를 들어:
- 나이 (255세까지 충분하지 않을까요?吸血鬼라도!)
- 평점 (1-5성)
- 작은 카운터
- 부울 값 (0 또는 1)
문법
column_name TINYINT[(M)] [UNSIGNED] [ZEROFILL]
이를 설명해 보겠습니다:
-
M
: 선택 사항 디스플레이 폭 (0-255) -
UNSIGNED
: 범위를 0에서 255로 설정 -
ZEROFILL
: 값의 표시를 선도하는 0으로 채웁니다
TINYINT 실제 사용: 클라이언트 프로그램 사용
이제 손을 더듬고 TINYINT를 실제로 사용해 보겠습니다. MySQL에서 이 데이터 타입을 어떻게 다루는지 몇 가지 예제를 통해 설명하겠습니다.
TINYINT를 사용한 테이블 생성
책 평가 시스템에 대한 정보를 저장하기 위한 간단한 테이블을 만들어 보겠습니다:
CREATE TABLE book_ratings (
id INT AUTO_INCREMENT PRIMARY KEY,
book_name VARCHAR(100),
rating TINYINT UNSIGNED,
is_recommended TINYINT(1)
);
이 예제에서:
-
rating
은 TINYINT UNSIGNED를 사용하여 0에서 5의 평점을 저장합니다. -
is_recommended
은 부울 값으로 사용하기 위해 TINYINT(1)을 사용합니다.
데이터 삽입
책 평점을 추가해 보겠습니다:
INSERT INTO book_ratings (book_name, rating, is_recommended)
VALUES
('The MySQL Handbook', 5, 1),
('SQL for Dummies', 3, 0),
('Database Design 101', 4, 1);
TINYINT 데이터 조회
이제 데이터를检索해 보겠습니다:
SELECT * FROM book_ratings;
출력:
+----+----------------------+--------+----------------+
| id | book_name | rating | is_recommended |
+----+----------------------+--------+----------------+
| 1 | The MySQL Handbook | 5 | 1 |
| 2 | SQL for Dummies | 3 | 0 |
| 3 | Database Design 101 | 4 | 1 |
+----+----------------------+--------+----------------+
조건절에서 TINYINT 사용
TINYINT는 WHERE 절에서 잘 작동합니다:
SELECT book_name, rating
FROM book_ratings
WHERE rating > 3 AND is_recommended = 1;
이 쿼리는 높은 평점을 받고 추천된 책을 검색합니다.
TINYINT를 부울 값으로 사용
MySQL에는 BOOLEAN 타입이 있지만, 실제로는 TINYINT(1)의 별칭입니다. 다음은 그 사용법입니다:
CREATE TABLE task_list (
id INT AUTO_INCREMENT PRIMARY KEY,
task_name VARCHAR(100),
is_completed BOOLEAN
);
INSERT INTO task_list (task_name, is_completed)
VALUES
('Learn MySQL', TRUE),
('Master TINYINT', FALSE);
SELECT * FROM task_list;
출력:
+----+----------------+--------------+
| id | task_name | is_completed |
+----+----------------+--------------+
| 1 | Learn MySQL | 1 |
| 2 | Master TINYINT | 0 |
+----+----------------+--------------+
TINYINT 메서드 및 함수
다음은 TINYINT를 다루는 데 유용한 메서드 및 함수 표입니다:
메서드/함수 | 설명 | 예제 |
---|---|---|
ABS() | 절대값을 반환합니다 | SELECT ABS(TINYINT_COLUMN) FROM TABLE; |
SIGN() | 부호를 반환합니다 (-1, 0, 또는 1) | SELECT SIGN(TINYINT_COLUMN) FROM TABLE; |
MOD() | 나머지를 반환합니다 | SELECT MOD(TINYINT_COLUMN, 3) FROM TABLE; |
GREATEST() | 가장 큰 값을 반환합니다 | SELECT GREATEST(TINYINT_COL1, TINYINT_COL2) FROM TABLE; |
LEAST() | 가장 작은 값을 반환합니다 | SELECT LEAST(TINYINT_COL1, TINYINT_COL2) FROM TABLE; |
결론
이제 여러분은 MySQL의 TINYINT 데이터 타입에 대한 뛰어난 여행을 마쳤습니다. 그 작은 크기에서부터 작은 정수 값과 부울 값을 저장하는 다양성에 이르기까지, TINYINT는 가끔 작은 패키지에서 가장 좋은 것들이 나온다는 것을 입증합니다.
기억하십시오, 적절한 데이터 타입을 선택하는 것은 데이터베이스 성능과 효율성에 매우 중요합니다. TINYINT는 작지만, 수百万 개의 행을 다루는 데 큰 차이를 만들 수 있습니다!
MySQL 여정을 계속하면서, TINYINT를 도구 상자에 보관하십시오. 그것은 작지만, 필요할 때 매우 유용합니다. 행복하게 코딩하시고, 데이터베이스가 항상 최적화되기를 바랍니다!
Credits: Image by storyset