TL
툴랩
💰후원하기
💰후원하기

SQL Cheat Sheet

Complete SQL reference: SELECT, JOINs, aggregation, subqueries, and functions.

Data Querying (SELECT)

SELECT * FROM table;Select all columns
SELECT col1, col2 FROM table;Select specific columns
SELECT DISTINCT col FROM table;Select unique values
SELECT * FROM t WHERE col = val;Filter rows with WHERE
SELECT * FROM t WHERE col LIKE '%pat%';Pattern matching with LIKE
SELECT * FROM t WHERE col IN (1, 2, 3);Filter by list of values
SELECT * FROM t WHERE col BETWEEN 10 AND 20;Filter by range
SELECT * FROM t WHERE col IS NULL;Filter NULL values
SELECT * FROM t ORDER BY col ASC;Sort results ascending
SELECT * FROM t ORDER BY col DESC;Sort results descending
SELECT * FROM t LIMIT 10;Limit number of rows returned
SELECT * FROM t LIMIT 10 OFFSET 20;Pagination — skip 20, return 10

Aggregation

SELECT COUNT(*) FROM table;Count all rows
SELECT COUNT(col) FROM table;Count non-NULL values
SELECT SUM(col) FROM table;Sum of column values
SELECT AVG(col) FROM table;Average of column values
SELECT MIN(col), MAX(col) FROM table;Minimum and maximum
SELECT col, COUNT(*) FROM t GROUP BY col;Group and count
SELECT col, COUNT(*) FROM t GROUP BY col HAVING COUNT(*) > 5;Filter groups with HAVING

JOINs

SELECT * FROM a INNER JOIN b ON a.id = b.a_id;Inner join — matching rows only
SELECT * FROM a LEFT JOIN b ON a.id = b.a_id;Left join — all rows from a
SELECT * FROM a RIGHT JOIN b ON a.id = b.a_id;Right join — all rows from b
SELECT * FROM a FULL OUTER JOIN b ON a.id = b.a_id;Full outer join — all rows
SELECT * FROM a CROSS JOIN b;Cartesian product of both tables

Data Manipulation

INSERT INTO t (c1, c2) VALUES (v1, v2);Insert a row
INSERT INTO t (c1, c2) VALUES (v1, v2), (v3, v4);Insert multiple rows
UPDATE t SET col = val WHERE id = 1;Update specific rows
DELETE FROM t WHERE id = 1;Delete specific rows
DELETE FROM t;Delete all rows (keep table)
TRUNCATE TABLE t;Delete all rows fast (DDL)

Table & Schema

CREATE TABLE t (id INT PRIMARY KEY, name VARCHAR(100));Create a table
DROP TABLE t;Delete a table
ALTER TABLE t ADD col INT;Add a column
ALTER TABLE t DROP COLUMN col;Remove a column
ALTER TABLE t RENAME TO new_name;Rename a table
CREATE INDEX idx ON t (col);Create an index
DROP INDEX idx;Remove an index

Subqueries & CTEs

SELECT * FROM t WHERE id IN (SELECT id FROM other);Subquery in WHERE
SELECT * FROM (SELECT * FROM t LIMIT 5) sub;Subquery in FROM (derived table)
WITH cte AS (SELECT * FROM t) SELECT * FROM cte;Common Table Expression (CTE)
SELECT *, ROW_NUMBER() OVER (PARTITION BY col ORDER BY date) FROM t;Window function

Useful Functions

COALESCE(col, default_val)Return first non-NULL value
NULLIF(a, b)Return NULL if a = b, else a
CASE WHEN cond THEN val ELSE other ENDConditional expression
CAST(col AS VARCHAR)Type casting
CONCAT(str1, str2)Concatenate strings
UPPER(col) / LOWER(col)Change case
TRIM(col)Remove leading/trailing whitespace
LENGTH(col)String length
SUBSTRING(col, 1, 5)Extract substring
NOW() / CURRENT_TIMESTAMPCurrent date and time
DATE_TRUNC('month', col)Truncate date to month (PostgreSQL)

이 도구 소개

SELECT, INSERT, UPDATE, DELETE, JOIN, 집계 함수 등 자주 사용하는 SQL 문법을 한눈에 볼 수 있는 참고표입니다.

검색창에 키워드를 입력하면 관련 명령어를 즉시 필터링할 수 있습니다.

사용 방법

  1. 각 섹션을 탐색하거나 검색창에 키워드를 입력하세요.
  2. 입력하는 즉시 목록이 필터링됩니다.
  3. SQL 스니펫을 쿼리 편집기나 터미널에 붙여넣으세요.
  4. 검색창을 지우면 전체 목록이 다시 표시됩니다.

활용 사례

임시 쿼리를 작성하는 개발자, SQL 문법을 배우는 학생, 코드 리뷰나 DB 마이그레이션을 진행하는 엔지니어에게 유용합니다.

자주 묻는 질문

  • PostgreSQL, MySQL, SQLite를 모두 다루나요?대부분 ANSI SQL 표준으로 주요 데이터베이스에서 동작합니다. 방언별 함수(예: DATE_TRUNC)는 별도 표기됩니다.
  • 특정 명령어를 검색할 수 있나요?네 — 검색창에 키워드, 함수명, 절을 입력하면 즉시 필터링됩니다.
  • 목록이 완전한가요?아닙니다. 자주 사용하는 SQL을 다루며, 고급 기능은 공식 문서를 참고하세요.