SQL-NoSQL Cheat Sheets
SQL¶
- SQL. PDF. See the notes below.

- SQL. PDF.

SQL notes¶
Basic Queries¶
SELECT col1, col2, col3, ... FROM table1;
- Commands are not case-sensitive:
SELECTorselect; ;is not required;- Dividing an integer by an integer gives an integer; use floats with decimals.
Add conditions¶
SELECT col1 FROM table1
WHERE (col4 = "A") AND (col5 = "B" OR col6 = "C");
SELECT col1 FROM table1
WHERE (col4 BETWEEN 10 AND 20);
< > = <> <= >= AND OR.
Filter out missing values (or non-missing values)¶
SELECT col1 FROM table1
WHERE col4 IS NULL;
SELECT col1 FROM table1
WHERE col4 IS NOT NULL;
Set limits¶
SELECT col1 FROM table1
WHERE (col4 BETWEEN 10 AND 20)
LIMIT 3;
BETWEENis inclusive (like<=and>=);
Find patterns¶
SELECT col1 FROM table1
WHERE col4 LIKE 'a%';
- regex patterns like
'a%'for “begins with a”,"%B"for “ends with capital B”; %is a joker.
SELECT col1 FROM table1
WHERE col4 IN ('Germany', "France", 'UK');
INsubgroups, limited to a set.
Command hierarchy¶
SELECT col1, col2, col3, ... FROM table1
WHERE col4 = 1 AND col5 = 2
LIMIT 3
GROUP by ...
HAVING count(*) > 1
ORDER BY col2, col3 DESC;
DESCor ascending by default.
Aggregate (two ways)¶
Opening aggregation:
SELECT COUNT(col1) FROM table1;
COUNT(not missing or not null values),SUM,AVG,MIN,MAX.
Closing aggregation:
SELECT col1 FROM table1
HAVING count(col2) > 1;
-
count, sum, avg, min, max.
Unique values¶
SELECT DISTINCT col2 FROM table1;
SELECT COUNT(col1) COUNT(DISTINCT col2) FROM table1;
Compute, transform, create new columns¶
SELECT col1 + col2 AS col1b FROM table1;
+ - * /.
Add views¶
CREATE VIEW view1 AS V1
SELECT col1 FROM table1;
- Aliases for the headers.
SQLite¶
- SQLite. PDF.

MySQL¶
- MySQL. PDF.

- Essential MySQL. PDF.

- Essential Admin for MySQL. PDF only.
PostgreSQL¶
- PostgreSQL. PDF.



- Essential PostgreSQL. PDF only.
NoSQL¶
- NoSQL and Data Scalability. PDF only.
- MongoDB. PDF only.