SQL 은 SQLD시험에 비해 난이도가 어렵지않음. 손코딩이기 때문에 작성하는 문법만 암기하면 됨.
CREATE
: 테이블, 인덱스 등을 생성합니다.CREATE TABLE users (
id INT PRIMARY KEY,
name VARCHAR(50),
age INT
);
ALTER
: 테이블 구조를 변경합니다.열 추가
ALTER TABLE 테이블명 ADD 열명 데이터타입;
예:
ALTER TABLE employees ADD email VARCHAR(255);
열 삭제
ALTER TABLE 테이블명 DROP COLUMN 열명;
예:
ALTER TABLE employees DROP COLUMN email;
열의 데이터타입 변경
ALTER TABLE 테이블명 MODIFY 열명 새데이터타입;
예:
ALTER TABLE employees MODIFY name TEXT;
열 이름 변경
ALTER TABLE 테이블명 RENAME COLUMN 기존열명 TO 새열명;
예:
ALTER TABLE employees RENAME COLUMN firstname TO first_name;
테이블 이름 변경
ALTER TABLE 기존테이블명 RENAME TO 새테이블명;
PRIMARY KEY 및 FOREIGN KEY 추가/삭제
ALTER TABLE 테이블명 ADD PRIMARY KEY (열명);
ALTER TABLE 테이블명 ADD FOREIGN KEY (열명) REFERENCES 다른테이블(열명);
ALTER TABLE 테이블명 DROP PRIMARY KEY;
ALTER TABLE 테이블명 DROP FOREIGN KEY 제약조건명;
DROP
: 테이블, 인덱스 등을 삭제합니다.DROP TABLE users;
SELECT
: 데이터를 조회합니다.SELECT name, age FROM users WHERE age > 20;
INSERT
: 데이터를 삽입합니다.INSERT INTO users (id, name, age) VALUES (1, 'John', 25);
UPDATE
: 데이터를 수정합니다.UPDATE users SET age = 26 WHERE name = 'John';
DELETE
: 데이터를 삭제합니다.DELETE FROM users WHERE name = 'John';
GRANT
: 사용자에게 권한을 부여합니다.GRANT SELECT ON employees TO user1;
REVOKE
: 사용자로부터 권한을 회수합니다.REVOKE SELECT ON employees FROM user1;
COMMIT
: 변경 사항을 데이터베이스에 저장합니다.ROLLBACK
: 이전 상태로 되돌립니다.SAVEPOINT
: 특정 지점을 설정하여 이후에 해당 지점으로 되돌릴 수 있습니다.SELECT employees.name, departments.department_name
FROM employees
INNER JOIN departments ON employees.department_id = departments.id;
IS NULL
: 값이 NULL인 데이터를 확인합니다.SELECT name FROM employees WHERE email IS NULL;
IS NOT NULL
: 값이 NULL이 아닌 데이터를 확인합니다.SELECT name FROM employees WHERE email IS NOT NULL;
DISTINCT
: 중복 값을 제거하고 결과를 반환합니다.SELECT DISTINCT department_id FROM employees;
UNIQUE
: 테이블의 열(column)에서 중복된 값을 허용하지 않도록 할 때 사용합니다. 주로 테이블 생성(CREATE) 또는 수정(ALTER) 시에 사용됩니다.ALL
: 모든 결과를 반환하며, 중복값도 포함합니다. 일반적으로 다른 연산자와 함께 사용됩니다.UNION
: 둘 이상의 SELECT 문의 결과를 합쳐 하나의 결과 집합으로 반환합니다. 중복된 값은 제거됩니다.SELECT name FROM employees WHERE department_id = 1
UNION
SELECT name FROM employees WHERE department_id = 2;
UNION ALL
: UNION과 유사하지만, 중복된 값도 결과에 포함시킵니다.