>_FoxiRef
SQL

SQL 치트시트

자주 사용하는 SQL 명령어 모음

#조회 (SELECT)

명령어설명
SELECT * FROM table모든 컬럼 조회
SELECT col1, col2 FROM table특정 컬럼 조회
SELECT DISTINCT col FROM table중복 제거 조회
SELECT col AS alias FROM table별칭 사용
SELECT * FROM table LIMIT 10결과 개수 제한
SELECT * FROM table OFFSET 5결과 건너뛰기

#조건 (WHERE)

명령어설명
WHERE col = value같음
WHERE col <> value같지 않음
WHERE col > value초과
WHERE col >= value이상
WHERE col < value미만
WHERE col <= value이하
WHERE col BETWEEN a AND b범위 내
WHERE col IN (v1, v2, v3)목록 중 하나
WHERE col LIKE '%pattern%'패턴 매칭
WHERE col IS NULLNULL 체크
WHERE col IS NOT NULLNOT NULL 체크
WHERE cond1 AND cond2AND 조건
WHERE cond1 OR cond2OR 조건
WHERE NOT conditionNOT 조건

#정렬 (ORDER BY)

명령어설명
ORDER BY col오름차순 정렬
ORDER BY col ASC오름차순 (명시적)
ORDER BY col DESC내림차순 정렬
ORDER BY col1, col2다중 컬럼 정렬
ORDER BY col NULLS FIRSTNULL 우선
ORDER BY col NULLS LASTNULL 마지막

#집계 함수

명령어설명
COUNT(*)행 개수
COUNT(col)NULL 제외 개수
COUNT(DISTINCT col)고유값 개수
SUM(col)합계
AVG(col)평균
MIN(col)최소값
MAX(col)최대값
GROUP BY col그룹화
HAVING condition그룹 필터링

#조인 (JOIN)

명령어설명
INNER JOIN t2 ON t1.col = t2.col교집합 조인
LEFT JOIN t2 ON t1.col = t2.col왼쪽 기준 조인
RIGHT JOIN t2 ON t1.col = t2.col오른쪽 기준 조인
FULL OUTER JOIN t2 ON ...전체 외부 조인
CROSS JOIN t2카테시안 곱
SELF JOIN (t AS a, t AS b)셀프 조인
NATURAL JOIN t2자연 조인

#삽입 (INSERT)

명령어설명
INSERT INTO t (cols) VALUES (vals)단일 행 삽입
INSERT INTO t VALUES (v1), (v2)다중 행 삽입
INSERT INTO t SELECT ...SELECT 결과 삽입
INSERT INTO t DEFAULT VALUES기본값으로 삽입

#수정 (UPDATE)

명령어설명
UPDATE t SET col = val전체 행 수정
UPDATE t SET col = val WHERE ...조건부 수정
UPDATE t SET c1 = v1, c2 = v2다중 컬럼 수정
UPDATE t SET col = col + 1기존 값 기반 수정

#삭제 (DELETE)

명령어설명
DELETE FROM t모든 행 삭제
DELETE FROM t WHERE ...조건부 삭제
TRUNCATE TABLE t테이블 비우기 (빠름)

#테이블 관리

명령어설명
CREATE TABLE t (col type, ...)테이블 생성
DROP TABLE t테이블 삭제
ALTER TABLE t ADD col type컬럼 추가
ALTER TABLE t DROP COLUMN col컬럼 삭제
ALTER TABLE t RENAME TO new테이블 이름 변경
CREATE INDEX idx ON t(col)인덱스 생성
DROP INDEX idx인덱스 삭제

#제약 조건

명령어설명
PRIMARY KEY기본 키
FOREIGN KEY REFERENCES t(col)외래 키
UNIQUE고유 제약
NOT NULLNULL 불허
DEFAULT value기본값
CHECK (condition)조건 체크
AUTO_INCREMENT / SERIAL자동 증가

#서브쿼리

명령어설명
WHERE col IN (SELECT ...)IN 서브쿼리
WHERE col = (SELECT ...)스칼라 서브쿼리
WHERE EXISTS (SELECT ...)EXISTS 서브쿼리
SELECT (SELECT ...) AS colSELECT 절 서브쿼리
FROM (SELECT ...) AS tFROM 절 서브쿼리
WITH cte AS (SELECT ...)CTE (공통 테이블 표현식)

#문자열/날짜 함수

명령어설명
CONCAT(s1, s2)문자열 연결
UPPER(str) / LOWER(str)대소문자 변환
LENGTH(str)문자열 길이
SUBSTRING(str, start, len)부분 문자열
TRIM(str)공백 제거
REPLACE(str, from, to)문자열 치환
NOW() / CURRENT_TIMESTAMP현재 시간
DATE(datetime)날짜 추출
YEAR(date) / MONTH(date)연도/월 추출
DATEDIFF(d1, d2)날짜 차이

이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.

SQL 치트시트 - SQL 명령어 모음 | Foxi Dev Reference