MySQL - INT: 초보자 가이드
안녕하세요, 데이터베이스 열정가 되시고자 하는 분들께! 오늘 우리는 MySQL의 세계로 점프하여 그 중에서도 가장 기본적인 데이터 타입之一的 INT를 탐구해보겠습니다. 프로그래밍에 새로운 분이라면 걱정 마세요 - 저는 여러분을 단계별로 안내해드릴 것입니다. 수년 동안 수많은 학생들을 가르친 경험을 바탕으로 말이죠. 그럼 손을 다시마질고 시작해보겠습니다!
MySQL INT 데이터 타입
MySQL의 INT 데이터 타입은 숫자 데이터 타입 가족의 강력하고 신뢰할 수 있는 중간이입니다. 이 타입은 소수점이 없는 정수(정수)를 저장하는 데 사용됩니다. -2,147,483,648에서 2,147,483,647까지의 숫자를 담을 수 있는 상자라고 생각해보세요. 이那是 많은 숫자입니다!
INT를 실제로 사용해보기 위해 간단한 테이블을 만들어보겠습니다:
CREATE TABLE my_first_table (
id INT,
age INT,
score INT
);
이 예제에서 우리는 my_first_table
이라는 테이블을 만들었고, id
, age
, score
세 개의 컬럼을 가지고 있습니다. 이 모든 컬럼은 INT 데이터 타입을 사용합니다.
이제 데이터를 추가해보겠습니다:
INSERT INTO my_first_table (id, age, score) VALUES (1, 25, 95);
INSERT INTO my_first_table (id, age, score) VALUES (2, 30, 88);
INSERT INTO my_first_table (id, age, score) VALUES (3, 22, 100);
여기서 우리는 테이블에 세 줄의 데이터를 추가하고 있습니다. 각 INSERT 문은 새로운 사람의 id, 나이, 점수를 추가합니다.
MySQL INT의 자동 증가 기능
INT의 하나의 멋진 기능은 자동 증가입니다. 이는 테이블의 각 행에 고유한 식별자를 생성하고 싶을 때 매우 유용합니다. 어떻게 작동하는지 보여드리겠습니다:
CREATE TABLE auto_increment_example (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(50)
);
INSERT INTO auto_increment_example (name) VALUES ('Alice');
INSERT INTO auto_increment_example (name) VALUES ('Bob');
INSERT INTO auto_increment_example (name) VALUES ('Charlie');
이 예제에서 id
컬럼은 Alice, Bob, Charlie에 각각 1, 2, 3을 자동으로 할당합니다. 마치 도움을 주는 어시스턴트가 항목을 번호 매기는 것처럼입니다!
MySQL INT UN&SIGNED
occasionally, you only need positive numbers. That's where UNSIGNED comes in handy. It effectively doubles the maximum value an INT can hold, from 0 to 4,294,967,295.
CREATE TABLE positive_numbers (
id INT UNSIGNED,
quantity INT UNSIGNED
);
INSERT INTO positive_numbers (id, quantity) VALUES (1, 100);
INSERT INTO positive_numbers (id, quantity) VALUES (2, 4294967295);
이 테이블은 오직 양수만을 허용하며, 수량이나 나이와 같은 것에 완벽합니다.
MySQL INT의 표시 폭 속성
표시 폭 속성은 INT가 저장할 수 있는 값의 범위에 영향을 주지 않지만, 데이터를 표시할 때 더 예쁜 모습을 만들 수 있습니다. 다음은 그 작동 방식입니다:
CREATE TABLE display_width_example (
id INT(4),
code INT(6) ZEROFILL
);
INSERT INTO display_width_example (id, code) VALUES (1, 123);
INSERT INTO display_width_example (id, code) VALUES (1000, 456789);
이 데이터를 검색할 때 code
는 각각 000123과 456789로 표시됩니다. 마치领先零을 추가하여 모든 숫자가 같은 폭을 가지도록 하는 것입니다.
MySQL INT의 ZEROFILL 속성
ZEROFILL은 표시 폭의 최고 친구입니다. 이는 숫자를 지정된 폭에 도달하도록 자동으로领先零을 추가합니다. 다음은 그 작동 방식을 보여줍니다:
CREATE TABLE zerofill_example (
id INT(5) ZEROFILL
);
INSERT INTO zerofill_example (id) VALUES (1);
INSERT INTO zerofill_example (id) VALUES (100);
INSERT INTO zerofill_example (id) VALUES (10000);
이 데이터를 검색할 때 00001, 00100, 10000을 볼 것입니다. 일관된 폭의 코드나 ID를 만드는 데 매우 유용합니다.
클라이언트 프로그램을 사용한 INT 데이터 타입
이제 모든 지식을 클라이언트 프로그램을 사용하여 실제로 적용해보겠습니다. MySQL 명령줄 클라이언트를 사용하는 예제를 보여드리겠지만, 원칙은 모든 MySQL 클라이언트에 적용됩니다.
-- MySQL에 연결
mysql -u your_username -p
-- 데이터베이스 생성
CREATE DATABASE int_examples;
-- 데이터베이스 사용
USE int_examples;
-- 여러 INT 타입을 사용한 테이블 생성
CREATE TABLE int_showcase (
id INT AUTO_INCREMENT PRIMARY KEY,
regular_int INT,
unsigned_int INT UNSIGNED,
display_width_int INT(4),
zerofill_int INT(6) ZEROFILL
);
-- 데이터 추가
INSERT INTO int_showcase (regular_int, unsigned_int, display_width_int, zerofill_int)
VALUES (-1000, 1000, 123, 123);
INSERT INTO int_showcase (regular_int, unsigned_int, display_width_int, zerofill_int)
VALUES (2000000, 3000000, 45678, 45678);
-- 데이터 검색
SELECT * FROM int_showcase;
이 코드를 실행하면 각 INT 타입이 어떻게 동작하는지 볼 수 있습니다. regular_int는 음수 값을 가질 수 있으며, unsigned_int는 오직 양수 값을 가지고, display_width_int은 일반적으로 보이고, zerofill_int는领先零을 추가합니다.
여기 INT 변형을 요약한 표입니다:
INT 타입 | 범위 | 예시 사용 사례 |
---|---|---|
INT | -2,147,483,648 to 2,147,483,647 | 일반적인 정수 저장 |
INT UNSIGNED | 0 to 4,294,967,295 | 양수 정수만 |
INT AUTO_INCREMENT | INT와 동일, 자동 증가 | 기본 키, 고유 식별자 |
INT(N) | INT와 동일, 표시 폭 영향 | 출력 형식 |
INT(N) ZEROFILL | INT와 동일,领先零 추가 | 일관된 폭 코드 |
그렇습니다, 친구들! 우리는 MySQL INT의 세계를 여행하며 기본부터 몇 가지 멋진 기술까지 탐구했습니다. MySQL을 마스터하려면 연습이 필요합니다. 그러니 이 개념들을 실험해보지 마세요! 누가 알겠는가? 당신은 코드 서클에서 INT 전문가가 될 수도 있습니다! 즐겁게 쿼리 작성하세요!
Credits: Image by storyset