SQL Cheat Sheet
Complete SQL reference: SELECT, JOINs, aggregation, subqueries, and functions.
Data Querying (SELECT)
SELECT * FROM table;Select all columnsSELECT col1, col2 FROM table;Select specific columnsSELECT DISTINCT col FROM table;Select unique valuesSELECT * FROM t WHERE col = val;Filter rows with WHERESELECT * FROM t WHERE col LIKE '%pat%';Pattern matching with LIKESELECT * FROM t WHERE col IN (1, 2, 3);Filter by list of valuesSELECT * FROM t WHERE col BETWEEN 10 AND 20;Filter by rangeSELECT * FROM t WHERE col IS NULL;Filter NULL valuesSELECT * FROM t ORDER BY col ASC;Sort results ascendingSELECT * FROM t ORDER BY col DESC;Sort results descendingSELECT * FROM t LIMIT 10;Limit number of rows returnedSELECT * FROM t LIMIT 10 OFFSET 20;Pagination — skip 20, return 10Aggregation
SELECT COUNT(*) FROM table;Count all rowsSELECT COUNT(col) FROM table;Count non-NULL valuesSELECT SUM(col) FROM table;Sum of column valuesSELECT AVG(col) FROM table;Average of column valuesSELECT MIN(col), MAX(col) FROM table;Minimum and maximumSELECT col, COUNT(*) FROM t GROUP BY col;Group and countSELECT col, COUNT(*) FROM t GROUP BY col HAVING COUNT(*) > 5;Filter groups with HAVINGJOINs
SELECT * FROM a INNER JOIN b ON a.id = b.a_id;Inner join — matching rows onlySELECT * FROM a LEFT JOIN b ON a.id = b.a_id;Left join — all rows from aSELECT * FROM a RIGHT JOIN b ON a.id = b.a_id;Right join — all rows from bSELECT * FROM a FULL OUTER JOIN b ON a.id = b.a_id;Full outer join — all rowsSELECT * FROM a CROSS JOIN b;Cartesian product of both tablesData Manipulation
INSERT INTO t (c1, c2) VALUES (v1, v2);Insert a rowINSERT INTO t (c1, c2) VALUES (v1, v2), (v3, v4);Insert multiple rowsUPDATE t SET col = val WHERE id = 1;Update specific rowsDELETE FROM t WHERE id = 1;Delete specific rowsDELETE 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 tableDROP TABLE t;Delete a tableALTER TABLE t ADD col INT;Add a columnALTER TABLE t DROP COLUMN col;Remove a columnALTER TABLE t RENAME TO new_name;Rename a tableCREATE INDEX idx ON t (col);Create an indexDROP INDEX idx;Remove an indexSubqueries & CTEs
SELECT * FROM t WHERE id IN (SELECT id FROM other);Subquery in WHERESELECT * 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 functionUseful Functions
COALESCE(col, default_val)Return first non-NULL valueNULLIF(a, b)Return NULL if a = b, else aCASE WHEN cond THEN val ELSE other ENDConditional expressionCAST(col AS VARCHAR)Type castingCONCAT(str1, str2)Concatenate stringsUPPER(col) / LOWER(col)Change caseTRIM(col)Remove leading/trailing whitespaceLENGTH(col)String lengthSUBSTRING(col, 1, 5)Extract substringNOW() / CURRENT_TIMESTAMPCurrent date and timeDATE_TRUNC('month', col)Truncate date to month (PostgreSQL)Sobre esta ferramenta
Referência rápida de SQL abrangendo SELECT, INSERT, UPDATE, DELETE, JOINs, agregações e funções comuns.
Use a caixa de pesquisa para filtrar comandos instantaneamente por palavra-chave.
Como usar
- Navegue pelas seções ou digite uma palavra-chave na caixa de pesquisa.
- A lista filtra instantaneamente enquanto você digita.
- Use o trecho SQL diretamente no seu editor de consultas ou terminal.
- Limpe a pesquisa para ver todas as seções novamente.
Casos de uso
Útil para desenvolvedores escrevendo consultas, estudantes aprendendo SQL e engenheiros em revisões de código ou migrações.
Perguntas frequentes
- Cobre PostgreSQL, MySQL e SQLite? — A maioria é SQL ANSI e funciona nos principais bancos de dados. Funções específicas do dialeto estão anotadas.
- Posso pesquisar um comando específico? — Sim — digite qualquer palavra-chave ou função na caixa de pesquisa e a lista filtra instantaneamente.
- A lista é exaustiva? — Não. Cobre o SQL mais comum do dia a dia. Consulte a documentação oficial para recursos avançados.