Introduction to SQL |
|
Basic queries |
|
Aggregation |
|
Joins and aliases |
|
Database design supplement |
|
SELECT column_names
FROM table_name;
SELECT *
FROM table_name;
SELECT DINSTINCT column_name
FROM table_name;
SELECT column_names
FROM table_name
WHERE column_name operator value;
=
,<
,>
, etcAND
, OR
in the WHERE clause.SELECT column_names
FROM table_name
WHERE column_name IN (value1, value2, value3);
value1
, value2
, and so on.SELECT column_names
FROM table_name
ORDER BY column_name ASC;
ASC
(ascending) or DESC
(descending) order.SELECT aggregate_function(column_name)
FROM table_name;
SELECT COUNT(*) FROM table_name
will display the total number of records.COUNT
, SUM
, MAX
, MIN
, AVG
.SELECT column_name, aggregate_function(column_name)
FROM table_name
WHERE column_name operator value
GROUP BY column_name;
GROUP BY
tells SQL what field or fields we want to use to aggregate the data. If we want to group by multiple fields, we give GROUP BY
a comma separated list.SELECT column_name, aggregate_function(column_name)
FROM table_name
GROUP BY column_name
HAVING aggregate_function(column_name) operator value;
HAVING
keyword works exactly like the WHERE
keyword, but uses aggregate functions instead of database fields.SELECT column_names
FROM table_name1
JOIN table_name2
ON table_name1.column_name = table_name2.column_name;
ON
, you can use the USING
keyword as a shorthand. E.g. USING (coolumn_name)
.SELECT alias1.column_name1, alias1.column_name2, alias2.column_name3
FROM table_name1 AS alias1
JOIN table_name2 AS alias2
ON alias1.column_name = alias2.column_name;
SELECT journal_title AS journal
.Arithmetic operators
+
-
*
/
Comparison operators
=
<
>
<=
>=
<>
Logical operators
ALL
AND
ANY
BETWEEN
EXISTS
IN
LIKE
NOT
OR
SOME