SQL은 데이터베이스를 관리하고 조작하기 위한 표준 언어이다. 데이터베이스에서 데이터를 저장, 수정, 삭제, 조회 등의 작업을 수행할 수 있게 해준다. SQL은 주로 관계형 데이터베이스 관리 시스템(RDBMS)에서 사용되며, 다양한 명령어를 통해 데이터의 구조와 내용을 제어할 수 있다.
SELECT와 WHERE 절 및 연산자SELECT 문은 데이터베이스에서 데이터를 조회할 때 사용된다. WHERE 절은 특정 조건을 만족하는 데이터만 조회할 때 사용되며, 연산자는 WHERE 절 냉서 조건을 지정하는 데 쓰인다.
예시:
SELECT * FROM users WHERE id = 1;
users 테이블에서 id가 1인 모든 데이터를 조회한다.= : 값이 같다!= 또는 <> : 값이 다르다> : 값이 크다< : 값이 작다>= : 값이 크거나 같다<= : 값이 작거나 같다AND : 여러 조건을 동시에 만족 (예: WHERE id = 1 AND username = 'john')OR : 여러 조건 중 하나만 만족 (예: WHERE id = 1 OR id = 2)LIKE : 패턴 매칭 (예: WHERE username LIKE 'jo%')SELECT * FROM users WHERE username = 'john' AND email LIKE '%gmail.com';
username이 'john'이고, email이 'gmail.com'으로 끝나는 데이터를 조회한다.INSERT INTO 문INSERT INTO문은 테이블에 새로운 데이터를 삽입할 때 사용된다.
예시:
INSERT INTO users (username, email) VALUES ('alice', 'alice@example.com');
users 테이블에 username은 'alice'이고, email은 'alice@example.com'인 새 데이터를 삽입한다. Auto Increment와 함께 사용하기:
테이블에 AUTO_INCREMENT가 설정된 필드(예: id)가 있는 경우, 해당 필드에는 값을 명시적으로 넣지 않아도 자동으로 증가된 값이 입력된다.
INSERT INTO users (username, email) VALUES ('bob', 'bob@example.com');
id는 자동으로 증가하고, username은 'bob', email은 'bob@example.com'인 데이터가 삽입된다.UPDATE 문은 기존 데이터를 수정할 때 사용된다. WHERE 절을 통해 특정 조건을 만족하는 데이터만 수정할 수 있다.
예시:
UPDATE users SET email = 'new_email@example.com' WHERE id = 1;
id가 1인 사용자의 email을 'new_email@example.com'으로 변경한다.여러 필드를 동시에 업데이트:
UPDATE users SET email = 'new_email@example.com', username = 'new_username' WHERE id = 1;
id가 1인 사용자의 email을 'new_email@example.com'으로, username을 'new_username'으로 수정한다.DELETE 문은 데이터를 삭제할 때 사용된다. WHERE 절을 사용해 특정 조건을 만족하는 데이터만 삭제할 수 있다. WHERE 절을 사용하지 않으면 테이블의 모든 데이터가 삭제되므로 주의해야 한다.
예시:
DELETE FROM users WHERE id = 1;
id가 1인 사용자의 데이터를 삭제한다.AUTO_INCREMENT는 테이블의 특정 필드 값이 자동으로 증가하도록 설정하는 기능이다. 주로 id 같은 기본 키에 사용되며, 새로운 레코드가 추가될 때마다 자동으로 1씩 증가한다.
예시 테이블 생성:
CREATE TABLE users (
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
username VARCHAR(30) NOT NULL,
email VARCHAR(50),
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
id 필드는 AUTO_INCREMENT로 설정되어, 사용자가 레코드를 삽입할 때마다 자동으로 1씩 증가한다.