🗄️ SQL Commands Cheat Sheet
📋 Quick Reference
DDL (Data Definition Language)
CREATE TABLE
CREATE TABLE table_name (
column1 datatype constraints,
column2 datatype constraints,
...
);
ALTER TABLE
ALTER TABLE table_name
ADD column_name datatype;
DROP TABLE
DROP TABLE table_name;
DML (Data Manipulation Language)
INSERT
INSERT INTO table_name (column1, column2, ...)
VALUES (value1, value2, ...);
UPDATE
UPDATE table_name
SET column1 = value1, column2 = value2
WHERE condition;
DELETE
DELETE FROM table_name
WHERE condition;
SELECT Queries
Basic SELECT
SELECT column1, column2
FROM table_name;
SELECT with WHERE
SELECT *
FROM table_name
WHERE condition;
SELECT with ORDER BY
SELECT *
FROM table_name
ORDER BY column_name [ASC|DESC];
🔍 Filtering & Conditions
Comparison Operators
=: Equal to!=or<>: Not equal to>: Greater than<: Less than>=: Greater than or equal to<=: Less than or equal to
Logical Operators
AND: All conditions must be trueOR: At least one condition must be trueNOT: Negates the condition
Pattern Matching
-- Starts with
WHERE column_name LIKE 'prefix%'
-- Ends with
WHERE column_name LIKE '%suffix'
-- Contains
WHERE column_name LIKE '%substring%'
-- Single character wildcard
WHERE column_name LIKE 'prefix_'
🤝 JOINs
INNER JOIN
SELECT columns
FROM table1
INNER JOIN table2 ON table1.common_column = table2.common_column;
LEFT JOIN
SELECT columns
FROM table1
LEFT JOIN table2 ON table1.common_column = table2.common_column;
RIGHT JOIN
SELECT columns
FROM table1
RIGHT JOIN table2 ON table1.common_column = table2.common_column;
📊 Aggregate Functions
Common Aggregates
SELECT COUNT(column_name) FROM table_name;
SELECT SUM(column_name) FROM table_name;
SELECT AVG(column_name) FROM table_name;
SELECT MIN(column_name) FROM table_name;
SELECT MAX(column_name) FROM table_name;
GROUP BY
SELECT column_name, COUNT(*)
FROM table_name
GROUP BY column_name;
HAVING
SELECT column_name, COUNT(*)
FROM table_name
GROUP BY column_name
HAVING COUNT(*) > 1;
🎯 Common Patterns
Pagination
SELECT *
FROM table_name
LIMIT 10 OFFSET 20;
Subquery
SELECT *
FROM table_name
WHERE column_name IN (SELECT column_name FROM another_table WHERE condition);
CASE Statement
SELECT column_name,
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
ELSE default_result
END AS new_column
FROM table_name;
🔍 Debugging Checklist
- Table and column names are correct
- Quotes are used properly for strings
- WHERE clause is included for UPDATE/DELETE
- JOIN conditions are correct
- Aggregate functions have GROUP BY when needed
- Subqueries return single values when required
⚡ Performance Tips
Optimization Guidelines
- ✅ Use indexes on frequently queried columns
- ✅ SELECT only needed columns, avoid
SELECT * - ✅ Use appropriate JOIN types
- ✅ Use LIMIT for large result sets
- ✅ Consider EXISTS instead of IN for subqueries
Common Pitfalls
- ❌ Missing WHERE clause in UPDATE/DELETE
- ❌ Cartesian products in JOINs
- ❌ NULL comparisons with
=(useIS NULL) - ❌ String comparisons without proper casing
Last updated: Phase 3 Implementation