← К оглавлению занятия

Занятие 05. Условные конструкции: операторы CASE, IF

📁 Блок: SQL / MySQL ⏱️ Время изучения: ~60 мин 🎯 Сложность: Начальная
#case #if #as #concat #left #right #substring #length #trim #replace #upper #lower #coalesce

⚡ Кратко: суть темы

Занятие учит создавать новые столбцы на основе условий. Разбираем оператор CASE, псевдонимы AS, функцию IF в MySQL, математические операции, строковые функции и конкатенацию.

  • CASE WHEN ... THEN ... ELSE ... END — переносит ветвление в SQL.
  • AS задаёт понятное имя вычисляемому столбцу.
  • IF(condition, true, false) — короткая альтернатива CASE, но только в MySQL.

Что запомнить: CASE — стандарт SQL и работает почти везде; IF — специфика MySQL.

Частая ошибка: забыть END в конце блока CASE.

🏠 Домашнее задание

Подготовьте SQL-файл с решениями следующих задач:

  1. Для таблицы products создайте столбец price_category с помощью CASE (границы: 50 и 20).
  2. Для таблицы customers добавьте скидку по региону (WA/CA — 5%, ID/OR — 7%, UT/NV — 13%, остальные — 0).
  3. Для таблицы orders создайте столбец order_status на основе shipped_date и order_date.
  4. Выведите полные имена сотрудников из employees через CONCAT.
  5. Замените NULL в employees.notes на 'Not filled' с помощью COALESCE.
  6. Сохраните файл как homework_2.sql и загрузите на платформу.