SQL
Базовые знания SQL: что это
Базовые знания SQL — это не знание всех команд наизусть. Это способность открыть таблицу, понять ее структуру, написать простой запрос, отфильтровать данные, соединить две таблицы и аккуратно изменить строки
Если человек умеет делать это без постоянной паники перед каждой ошибкой, у него уже есть рабочая база для дальнейшего обучения
Что входит в базовый уровень
Минимальный набор:
- понимать, что такое таблица, строка и колонка
- знать основные типы данных
- писать
SELECT - фильтровать через
WHERE - сортировать через
ORDER BY - ограничивать вывод строк
- считать агрегаты через
COUNT,SUM,AVG - группировать через
GROUP BY - соединять таблицы через
JOIN - добавлять данные через
INSERT - менять данные через
UPDATE - удалять строки через
DELETE - понимать первичный и внешний ключ
Этого достаточно, чтобы читать большинство простых SQL-запросов и решать учебные задачи
Первый уровень практики
Пример простого запроса:
SELECT
name,
city
FROM clients
WHERE city = 'Moscow'
ORDER BY name;
Если вы понимаете, какие строки вернет этот запрос и почему, вы уже находитесь внутри базовой логики SQL
Что нужно знать про JOIN
JOIN — одна из главных тем базового SQL. Без него вы можете работать только с одной таблицей, а реальные данные почти всегда распределены между несколькими таблицами
Пример:
SELECT
clients.name,
orders.amount
FROM orders
JOIN clients
ON orders.client_id = clients.id;
Здесь заказы соединяются с клиентами по внешнему ключу client_id
Что нужно знать про изменение данных
Базовый уровень включает не только чтение, но и осторожное изменение данных
Добавить строку:
INSERT INTO clients (name, city)
VALUES ('Ivan', 'Moscow');
Изменить строку:
UPDATE clients
SET city = 'Kazan'
WHERE name = 'Ivan';
Удалить строку:
DELETE FROM clients
WHERE name = 'Ivan';
Главное правило: перед UPDATE и DELETE всегда проверяйте условие через SELECT
Как понять, что база освоена
Проверьте себя. Вы должны уметь:
- объяснить, что делает запрос
- исправить простую ошибку в синтаксисе
- выбрать нужные колонки
- отфильтровать строки
- соединить две таблицы
- посчитать количество строк по группам
- создать простую таблицу
- не использовать
DELETEбез понимания условия
Если все это получается, можно переходить к подзапросам, индексам, транзакциям, оконным функциям и оптимизации
Мини-практика
Создайте таблицу заказов и выполните группировку:
CREATE TABLE orders (
id INT PRIMARY KEY,
city VARCHAR(50),
amount DECIMAL(10, 2)
);
SELECT
city,
COUNT(*) AS orders_count,
SUM(amount) AS total_amount
FROM orders
GROUP BY city;
Добавьте несколько строк и проверьте, как меняется результат
Частые ошибки
- Думать, что базовый SQL — это только
SELECT * - Учить команды без таблиц и практики
- Не понимать разницу между
WHEREиHAVING - Бояться
JOINи пытаться хранить все в одной таблице - Использовать
UPDATEиDELETEбез проверки - Путать разные SQL-диалекты
- Не читать текст ошибки
Что почитать дальше по SQL
Если нужен общий маршрут по теме, откройте рубрику SQL. Для соседних задач пригодятся эти разборы:
- ALTER TABLE в SQL: как добавить, изменить и удалить столбец
- BETWEEN SQL: как выбрать значения в диапазоне
- CREATE TABLE SQL: как создать таблицу запросом
- CSV в SQL: как загрузить файл в базу данных