Searchable SQL cheat sheet, 100+ statements backend
engineers and analysts actually run — not the toy "SELECT
* FROM users" list. Eleven categories:
basics (SELECT, WHERE, GROUP BY, ORDER BY, LIMIT, DISTINCT,
IN, BETWEEN, LIKE, CASE, COALESCE, UNION), aggregates
(COUNT, SUM, AVG, MIN, MAX, HAVING, GROUP_CONCAT /
STRING_AGG, FILTER, ROLLUP / CUBE), JOIN (INNER, LEFT,
RIGHT, FULL OUTER, CROSS, SELF, multi-table chains, USING,
LATERAL, anti-join), subquery / CTE (scalar, IN, EXISTS,
correlated, WITH, recursive, ANY / ALL), window functions
(ROW_NUMBER, RANK, DENSE_RANK, LAG, LEAD, running totals
via PARTITION BY, sliding ROWS BETWEEN, NTILE,
FIRST_VALUE, PERCENT_RANK, WINDOW clause), writes (INSERT,
INSERT ... SELECT, UPDATE, UPDATE ... JOIN, DELETE, UPSERT
via ON CONFLICT / ON DUPLICATE KEY, TRUNCATE, RETURNING,
MERGE), DDL (CREATE TABLE, PRIMARY / FOREIGN KEY with
cascade, UNIQUE, CHECK, ALTER TABLE, CREATE INDEX, VIEW +
materialized view), transactions (BEGIN / COMMIT / ROLLBACK,
SAVEPOINT, four isolation levels, SELECT FOR UPDATE + SKIP
LOCKED, deadlock retries), indexes and EXPLAIN (composite
leftmost-prefix, covering / INCLUDE, partial, why an index
is not used, ANALYZE, pg_stat_statements), dialect
differences (MySQL vs PostgreSQL vs SQLite for auto-
increment, LIMIT / OFFSET vs OFFSET FETCH, || vs CONCAT vs
+, INTERVAL syntax, BOOLEAN, JSON vs JSONB, case), and
money-burning pitfalls (NULL is not equal to NULL, GROUP
BY missing columns, SQL injection, LEFT JOIN that degrades
to INNER JOIN via misplaced WHERE, DELETE / UPDATE without
WHERE, floating-point money, implicit cast killing an
index). Every entry carries a real "common pitfall" line,
1-3 copy-ready examples, and a dialect tag where syntax
forks. Search across statement / description / pitfall /
example at once; category chips scope; dialect filter
shows only MySQL / PostgreSQL / SQLite. Client-side only,
no DB connection. Pair with SQL Formatter and our Docker
/ kubectl / Nginx / Regex cheat sheets.