Не нужно ничего устанавливать. Откройте тренажёр и напишите первый запрос прямо сейчас.
Что такое SQL-запрос
SQL-запрос — это инструкция для базы данных. Вы говорите: «Дай мне все заказы больше 1000 рублей, отсортированные по дате». База выполняет.
Самый простой запрос:
SELECT * FROM users;
SELECT— что выбрать (*= все колонки)FROM— из какой таблицы
Таблица с которой будем работать
Представьте таблицу products (товары в магазине):
| id | name | price | category |
|---|---|---|---|
| 1 | Ноутбук | 85000 | Электроника |
| 2 | Мышь | 1500 | Электроника |
| 3 | Стол | 12000 | Мебель |
| 4 | Кресло | 18000 | Мебель |
| 5 | Книга SQL | 800 | Книги |
Выбрать конкретные колонки
SELECT name, price FROM products;
Результат: только name и price, не все колонки.
Фильтрация: WHERE
SELECT name, price FROM products WHERE price > 10000;
Результат: только товары дороже 10000.
-- Конкретное значение
SELECT * FROM products WHERE category = 'Электроника';
-- Несколько условий
SELECT * FROM products WHERE category = 'Мебель' AND price < 15000;
-- Одно из нескольких значений
SELECT * FROM products WHERE category IN ('Электроника', 'Книги');
Сортировка: ORDER BY
-- От дешёвых к дорогим
SELECT name, price FROM products ORDER BY price;
-- От дорогих к дешёвым
SELECT name, price FROM products ORDER BY price DESC;
ASC — по возрастанию (по умолчанию), DESC — по убыванию.
Ограничение: LIMIT
-- Только первые 3 строки
SELECT name, price FROM products ORDER BY price DESC LIMIT 3;
Результат: 3 самых дорогих товара.
Псевдонимы: AS
SELECT name, price, price * 0.1 AS tax FROM products;
AS даёт колонке другое имя в результате. Удобно для вычисляемых полей.
Соберём всё вместе
Задача: «Найти все товары из категории Электроника дороже 5000, показать название и цену, отсортировать по цене убыванию»
SELECT
name AS название,
price AS цена
FROM products
WHERE category = 'Электроника'
AND price > 5000
ORDER BY price DESC;
Результат:
| название | цена |
|---|---|
| Ноутбук | 85000 |
Структура SELECT
SELECT колонки -- что выбрать
FROM таблица -- откуда
WHERE условие -- фильтр строк
ORDER BY колонка [DESC] -- сортировка
LIMIT n; -- ограничение
Порядок важен. WHERE всегда после FROM, ORDER BY после WHERE.
Следующий шаг
Теперь вы знаете базовый SELECT. Следующие темы:
- GROUP BY — подсчёт и группировка
- JOIN — объединение таблиц
- Агрегатные функции — COUNT, SUM, AVG
Лучший способ закрепить — решить 10–20 задач прямо сейчас. Мышечная память формируется только через практику.
Попробуйте SQL Lab — задачи от базового SELECT до оконных функций, реальный PostgreSQL, всё на русском языке.