SQL 정리

김동욱·2024년 11월 25일

SQL(Structured Query Language)

데이터베이스에서 사용되는 생성, 삽입, 조회 명령문

DDL

데이터 정의

  • CREATE (테이블 생성)
    CREATE DATABASE 데이터베이스명;
    CREATE TABLE 테이블명 { 컬럼명 컬럼속성 }

  • DROP (테이블 삭제)
    DROP DATABASE 데이터베이스명;
    DROP TABLE 테이블명;

  • ALTER (구조 변경)

ALTER DATABASE 데이터베이스명 변경조건;
ALTER TABLE 테이블명 ADD 변경조건; -- 테이블에 새로운 컬럼을 추가합니다.
ALTER TABLE 테이블명 DROP 변경조건; -- 테이블에서 컬럼을 삭제합니다.
ALTER TABLE 테이블명 MODIFY 변경조건; -- 테이블의 컬럼을 수정합니다.
ALTER TABLE 테이블명 RENAME 변경조건; -- 테이블의 이름을 변경합니다.

DML

데이터 조작

  • SELECT (조회)
    SELECT 컬럼목록 FROM 테이블명 [WHERE 조건];
  • INSERT (삽입/추가)
    INSERT INTO 테이블명 (컬럼목록) VALUES (값목록);
  • DELETE (삭제)
    DELETE FROM 테이블명 [WHERE 조건];
  • UPDATE (갱신)
    UPDATE 테이블명 SET 컬럼 = 값 [WHERE 조건];

DCL

데이터 제어 (권한 관리)

  • GRANT (권한 부여)
    GRANT [권한] ON 객체명 TO 사용자;
  • REVOKE (권한 회수)
    REVOKE [권한] ON 객체명 FROM 사용자;

TCL

트랜잭션 제어

  • COMMIT (정상 수행)
START TRANSACTION;
...
COMMIT;
  • ROLLBACK (이전상태로)
START TRANSACTION;
...
ROLLBACK;

제약조건

UNIQUE : 중복 불가
NOT NULL : NULL 불가
PRIMARY KEY : 주요식별자
FOREIGN KEY : 다른 테이블 참조식별자

JOIN

서로 다른 테이블을 조합하여 새로운 데이터 조합을 생성하는 연산자

  • INNER JOIN : 두 테이블에서 조인 칼럼이 일치하는 값을 데이터들
  • LEFT JOIN / RIGHT JOIN / FULL JOIN : 이너 조인 결과를 포함해, 한 쪽 또는 양쪽 테이블의 모든 데이터를 같이 반환
    (예를 들어, USER 테이블의 ITEM-ID와 ITEM 테이블의 ITEM-ID로 조인했을 때, 이너 조인한다면 볼 수 없는 USER 테이블에 ID가 없는 ITEM들을 볼 수 있다.)
profile
갓겜만들어야지

0개의 댓글