-- Базовый шаблон SELECT
SELECT column1, column2, aggregate_function(column3)
FROM table_name
JOIN another_table ON condition
WHERE row_condition
GROUP BY column1, column2
HAVING aggregate_condition
ORDER BY column DESC
LIMIT count OFFSET offset;
Команды / операторы / функции
Конструкция
Описание
Пример
SELECT
Выборка данных
SELECT model, price FROM Product;
FROM
Указание таблицы
FROM Product
WHERE
Фильтр строк
WHERE color = 'y'
ORDER BY
Сортировка
ORDER BY price DESC
LIMIT
Ограничение числа строк
LIMIT 10
OFFSET
Пропуск строк
LIMIT 10 OFFSET 20
COUNT()
Количество строк или не-NULL значений
SELECT COUNT(*) FROM PC;
SUM()
Сумма значений
SELECT SUM(price) FROM PC;
AVG()
Среднее значение
SELECT AVG(speed) FROM PC;
MIN()
Минимальное значение
SELECT MIN(price) FROM Laptop;
MAX()
Максимальное значение
SELECT MAX(price) FROM Laptop;
GROUP BY
Группировка строк
GROUP BY maker
HAVING
Фильтр групп
HAVING AVG(price) > 500
INNER JOIN
Внутреннее соединение
FROM PC JOIN Product USING(model)
LEFT JOIN
Левое внешнее соединение
FROM Product LEFT JOIN PC USING(model)
RIGHT JOIN
Правое внешнее соединение
FROM PC RIGHT JOIN Product USING(model)
FULL JOIN
Полное внешнее соединение
FROM A FULL JOIN B ON A.id = B.id
CROSS JOIN
Декартово произведение
FROM A CROSS JOIN B
UNION
Объединение с удалением дубликатов
SELECT model FROM PC UNION SELECT model FROM Laptop;
UNION ALL
Объединение всех строк
SELECT model FROM PC UNION ALL SELECT model FROM Laptop;