3.4 KiB
3.4 KiB
Comprehensive SQL Cheat Sheet
Table of Contents
- Database Basics
- SQL Syntax
- Data Types
- Table Operations
- Querying Data
- Filtering Data
- Joins
- Aggregate Functions
- Group By
- Subqueries
- Transactions
- Indexes
- Views
Database Basics
Creating a Database
CREATE DATABASE dbname;
Using a Database
USE dbname;
Deleting a Database
DROP DATABASE dbname;
SQL Syntax
SELECT Statement
SELECT column1, column2 FROM table_name;
WHERE Clause
SELECT * FROM table_name WHERE condition;
ORDER BY Clause
SELECT * FROM table_name ORDER BY column1 ASC, column2 DESC;
LIMIT Clause
SELECT * FROM table_name LIMIT 10;
Data Types
Numeric Types
INT, FLOAT, DOUBLE, DECIMAL
Character Types
CHAR, VARCHAR, TEXT
Date and Time Types
DATE, TIME, DATETIME
Table Operations
Creating a Table
CREATE TABLE table_name (
column1 datatype,
column2 datatype,
...
);
Altering a Table
ALTER TABLE table_name
ADD column_name datatype;
Dropping a Table
DROP TABLE table_name;
Querying Data
Basic SELECT
SELECT * FROM table_name;
Aliasing Columns
SELECT column1 AS alias1, column2 AS alias2 FROM table_name;
Filtering Data
WHERE Clause
SELECT * FROM table_name WHERE condition;
AND, OR, NOT
SELECT * FROM table_name WHERE condition1 AND condition2;
IN Clause
SELECT * FROM table_name WHERE column_name IN (value1, value2);
Joins
INNER JOIN
SELECT * FROM table1 INNER JOIN table2 ON table1.column = table2.column;
LEFT JOIN
SELECT * FROM table1 LEFT JOIN table2 ON table1.column = table2.column;
RIGHT JOIN
SELECT * FROM table1 RIGHT JOIN table2 ON table1.column = table2.column;
Aggregate Functions
COUNT
SELECT COUNT(column) FROM table_name;
SUM
SELECT SUM(column) FROM table_name;
AVG
SELECT AVG(column) FROM table_name;
MIN and MAX
SELECT MIN(column), MAX(column) FROM table_name;
Group By
SELECT column1, COUNT(column2) FROM table_name GROUP BY column1;
Subqueries
Single-Row Subquery
SELECT column1 FROM table_name WHERE column2 = (SELECT column2 FROM another_table WHERE condition);
Multi-Row Subquery
SELECT column1 FROM table_name WHERE column2 IN (SELECT column2 FROM another_table WHERE condition);
Transactions
Begin Transaction
BEGIN;
Commit Transaction
COMMIT;
Rollback Transaction
ROLLBACK;
Indexes
Creating an Index
CREATE INDEX index_name ON table_name (column1, column2);
Dropping an Index
DROP INDEX index_name;
Views
Creating a View
CREATE VIEW view_name AS
SELECT column1, column2 FROM table_name WHERE condition;
Updating a View
CREATE OR REPLACE VIEW view_name AS
SELECT new_column1, new_column2 FROM table_name WHERE condition;
Dropping a View
DROP VIEW view_name;