DML
MySQL
SQL
cheat-sheet
database
MySQL - Querying Data
Selecting Data
Select All Columns
SELECT * FROM table_name ;
Select Specific Columns
SELECT column1 FROM table_name ;
SELECT column1 , column2 FROM table_name ;
Rename Columns (Alias)
SELECT column1 AS new_name FROM table_name ;
Distinct Values
SELECT DISTINCT column_name FROM table_name ;
Ordering Results
SELECT * FROM table_name ORDER BY column_name ; -- Ascending
SELECT * FROM table_name ORDER BY column_name DESC ; -- Descending
Limit Results
SELECT * FROM table_name LIMIT n ;
SELECT * FROM table_name LIMIT offset , row_count ;
Filtering Data - WHERE Clause
Numeric Filters
WHERE column > value ;
WHERE column >= value ;
WHERE column < value ;
WHERE column <= value ;
WHERE column = value ;
WHERE column <> value ; -- Not equal
WHERE column != value ; -- Also not equal
WHERE column BETWEEN m AND n ;
Text Filters
WHERE column = 'value' ;
WHERE column IN ( 'value1' , 'value2' );
WHERE column LIKE '%pattern%' ; -- Contains
Multiple Conditions
WHERE condition1 AND condition2 ;
WHERE condition1 OR condition2 ;
NULL Checks
WHERE column IS NULL ;
WHERE column IS NOT NULL ;
Aggregating Data
Aggregate Functions
SELECT COUNT ( * ) FROM table_name ;
SELECT SUM ( column ) FROM table_name ;
SELECT AVG ( column ) FROM table_name ;
SELECT MIN ( column ) FROM table_name ;
SELECT MAX ( column ) FROM table_name ;
Grouping and Summarizing
SELECT column , COUNT ( * ) FROM table_name GROUP BY column ;
SELECT column , SUM ( column2 ) AS alias_name
FROM table_name
GROUP BY column
ORDER BY alias_name DESC ;
SELECT column , SUM ( column2 ) AS alias_name
FROM table_name
GROUP BY column
HAVING alias_name > value ;
Filtering Before and After Grouping
SELECT column , SUM ( column2 ) AS alias_name
FROM table_name
WHERE condition
GROUP BY column
HAVING alias_name > value ;
MySQL-Specific Features
Limit with Offset
SELECT * FROM table_name LIMIT offset , count ;
Case Sensitivity
Case-insensitive by default:
SELECT * FROM table_name WHERE column = 'TEXT' ;
SELECT * FROM table_name WHERE BINARY column = 'TEXT' ;
Date/Time Functions
SELECT CURDATE (); -- Current Date
SELECT NOW (); -- Current Date and Time
SELECT CURTIME (); -- Current Time
Show All Tables