Essential MySQL Cheat Sheet
by guslong via cheatography.com/1345/cs/520/
MySQL Data Types
Select queries
Creating and modifying (cont)
CHAR
select all columns
clear all the values, leaving the table structure
String (0 - 255)
VARCHAR
String (0 - 255)
TINYTEXT
String (0 - 255)
TEXT
String (0 - 65535)
BLOB
String (0 - 65535)
MEDIUMTEXT
String (0 - 16777215)
MEDIUMBLOB
String (0 - 16777215)
LONGTEXT
String (0 - 4294967295)
LONGBLOB
String (0 - 4294967295)
SELECT * FROM tbl;
select some columns
SELECT col1, col2 FROM tbl;
select only unique records
SELECT DISTINCT FROM tbl WHERE
column alias with AS
SELECT col FROM tbl AS newname;
order results
SELECT * FROM tbl ORDER BY col [ASC |
Integer (-128 to 127)
SMALLINT x
Integer (-32768 to 32767)
MEDIUMINT x
Integer (-8388608 to
SELECT col1, SUM(col2) FROM tbl
8388607)
GROUP BY col1;
BIGINT x
group results
Creating and modifying
Integer (-
create a database
FLOAT
Decimal (precise to 23 digits)
DOUBLE
Decimal (24 to 53 digits)
DECIMAL
"DOUBLE" stored as string
DATE
YYYY-MM-DD
YYYY-MM-DD HH:MM:SS
TIMESTAMP
YYYYMMDDHHMMSS
TIME
HH:MM:SS
ENUM
One of preset options
SET
Selection of preset options
Integers (marked x) that are "UNSIGNED" have
the same range of values but start from 0 (i.e.,
an UNSIGNED TINYINT can have any value
from 0 to 255).
DROP TABLE tbl;
delete the database
DROP DATABASE db_name;
Matching data
matching data using LIKE
SELECT * FROM tbl1 WHERE col LIKE
%value%
matching data using REGEX
SELECT * FROM tbl1 WHERE col RLIKE
regular_expression
Joins
2147483647)
9223372036854775807)
DATETIME
DESC];
Integer (-2147483648 to
9223372036854775808 to
delete the table
condition;
TINYINT x
INT x
TRUNCATE TABLE tbl;
CREATE DATABASE db_name;
select a database
USE db_name;
list the databases on the server
SHOW DATABASES;
show a table's fields
DESCRIBE tbl;
create a new table
CREATE TABLE tbl (field1, field2);
insert data into a table
INNER
returns only where match in both
JOIN
tables
OUTER
also returns non-matching records
JOIN
from both tables
LEFT
also returns non-matching records
JOIN
from left table
RIGHT
also returns non-matching records
JOIN
in right table
JOIN syntax:
SELECT * FROM tbl1 INNER JOIN tbl2 ON
tbl1.id = tbl2.id;
INSERT INTO tbl VALUES ("val1", "val2");
delete a row
DELETE * FROM tbl WHERE condition;
add a column from a table
ALTER TABLE tbl ADD COLUMN col;
remove a column from a table
ALTER TABLE tbl DROP COLUMN col;
make a column a primary key
ALTER TABLE tbl ADD PRIMARY KEY
(col);
return only 1 row matching query
... LIMIT = 1
String functions mySQL
Compare strings
STRCMP("str1","str2")
Convert to lower
LOWER("str")
case
Convert to upper
UPPER("str")
case
Left trim
LTRIM("str")
Substring of a
SUBSTRING("str","inx1","i
string
nx2")
Concatenate
CONCAT("str1","str2")
amend the values of a column
UPDATE table SET column1="val1"
WHERE ...
By guslong
Published 13th August, 2012.
Sponsored by Readability-Score.com
cheatography.com/guslong/
Last updated 29th June, 2014.
Measure your website readability!
Page 1 of 2.
https://readability-score.com
Essential MySQL Cheat Sheet
by guslong via cheatography.com/1345/cs/520/
MySQL calculation functions
Count rows
COUNT(col)
Average
AVG(col)
Minimum value
MIN(col)
Maximum value
MAX(col)
Sum of values
SUM(col)
Create table with auto-incrementing primary key
CREATE TABLE table_name (
id INT AUTO_INCREMENT,
column VARCHAR(2),
column VARCHAR(32),
PRIMARY KEY (`id`)
);
By guslong
Published 13th August, 2012.
Sponsored by Readability-Score.com
cheatography.com/guslong/
Last updated 29th June, 2014.
Measure your website readability!
Page 2 of 2.
https://readability-score.com