SQL для тестировщика: SELECT, WHERE и JOIN

Зачем ходить в базу, как устроены таблицы и как достать нужные строки. Настоящий SQL прямо в браузере — с проверкой ответа.

Интерфейс показывает то, что решил показать разработчик. База данных показывает то, что есть на самом деле. Поэтому SQL — обязательный навык: он спрашивается на большинстве собеседований и используется каждый день.

Зачем тестировщику база

⚠️ Права доступа

Тестировщику дают доступ только на чтение (SELECT). Это правильно: UPDATE без WHERE на боевой базе — легендарная катастрофа. Если вам всё же дали больше прав, работайте только на тестовом стенде и всегда сначала выполняйте SELECT с тем же условием, что и планируемое изменение.

Как устроены таблицы

Таблица — это строки (записи) и столбцы (поля). У строки есть уникальный первичный ключ (обычно id). Связь между таблицами — внешний ключ: в таблице orders лежит user_id, который указывает на users.id.

Базовый запрос

SELECT name, email        -- какие столбцы вернуть (* — все)
FROM users                -- из какой таблицы
WHERE city = 'Москва'     -- условие отбора
ORDER BY created_at DESC  -- сортировка (DESC — по убыванию)
LIMIT 10;                 -- сколько строк вернуть

Условия в WHERE

ОператорПримерСмысл
= <> < > <= >=total >= 5000Сравнение
AND OR NOTcity = 'Москва' AND total > 1000Логика
INstatus IN ('new','paid')Одно из перечисленных
BETWEENtotal BETWEEN 1000 AND 5000Диапазон включительно
LIKEemail LIKE '%@mail.ru'Шаблон: % — любое число символов
IS NULLemail IS NULLПустое значение
🎯 Порядок частей запроса фиксирован

SELECT → FROM → JOIN → WHERE → GROUP BY → HAVING → ORDER BY → LIMIT. Поменять местами нельзя. Большинство ошибок новичка — именно нарушение этого порядка.

Тренажёр: пишем запросы

Ниже — настоящий SQL-движок с учебной базой интернет-магазина. Запрос выполняется прямо в браузере, а результат сравнивается с эталоном: любое корректное решение засчитывается.

🎯 Этот тренажёр есть в курсе

Практическая часть урока выполняется в браузере с проверкой результата. Попробовать бесплатно: тренажёр по вёрстке или зарегистрируйтесь — откроются уроки и тренажёры курса.

Полезные мелочи

Это урок из курса «Ручной тестировщик»

В курсе 47 уроков и 36 тренажёров: тест-дизайн, вёрстка и UX, DevTools, API, SQL, Git и работа со стендом. Несколько уроков открыты бесплатно после регистрации.

Открыть бесплатные уроки Программа курса