TOP N 쿼리
상위 N개의 데이터를 추출하는 쿼리
1) TOP: SQL Server에서 사용
2) LIMIT: MySQL, PostSQL 등에서 사용
3) FETCH FIRST: DB2, Oracle 등에서 사용
4) ROWNUM: Oracle에서 사용

유의사항
1) ORDER BY 사용은 필수 (정렬 없이 사용 시 랜덤 결과 출력)
2) TOP 사용 시 동일한 순위도 함께 출력하려면 WITH TIES 사용
3) ROWNUM 사용 시 =, > 연산자는 사용 불가
계층형 질의
데이터가 계층 구조를 가지고 있을 때, 계층 구조를 탐색하기 위하여 사용


셀프조인
같은 테이블에 대하여 조인을 수행


1) PIVOT절
행 데이터를 특정 컬럼 기준으로 열 방향으로 재구성
LONG DATA를 WIDE DATA로 변경

2) UNPIVOT절
열 데이터를 행으로 변환
WIDE DATA를 LONG DATA로 변경

정규표현식
문자와 기호를 조합하여 특정 패턴을 검색하거나 일치 여부를 확인할 때 사용
주요 정규표현식 기호

데이터 조작언어 (INSERT, UPDATE, DELETE, MERGE문)
INSERT
새로운 데이터(행)을 테이블에 추가

UPDATE
기존 데이터를 수정

DELETE
데이터를 삭제

MERGE
두 테이블을 조건에 따라 데이터를 삽입(INSERT)하거나 수정(UPDATE)

트랜잭션 제어문
트랜잭션 특징: 원자성(Atomicity), 일관성(Consistency), 고립성(Isolation), 연속성(Durability) 중요!!
데이터의 구조(스키마)를 정의
CREATE
새로운 테이블의 생성

테이블명과 컬럼명 정의시 기본 규칙
숫자로 시작할 수 없으며, A-Z, a-z, 0-9, _, $, # 문자만 허용, 성격에 맞는 의미 있는 이름 사용
ALTER
테이블의 구조 변경

DROP
테이블의 삭제

TRUNCATE
테이블 안의 모든 데이터를 삭제하지만, 테이블 구조는 유지(스키마는 유지)

사용자의 권한을 관리
GRANT
사용자에게 권한을 부여

REVOKE
사용자의 권한을 회수

권한 부여 옵션
