← К курсу

Занятие 41. Оптимизация запросов. Индексация

📁 Блок: SQL / MySQL / Оптимизация ⏱️ Время изучения: ~90 мин 🎯 Сложность: Продвинутая
#create #unique #explain

⚡ Кратко: суть занятия

Оптимизация запросов нужна, чтобы уменьшить время выполнения и расход ресурсов базы данных.

Главный инструмент урока — индекс: структура данных, которая помогает быстрее находить строки без полного просмотра таблицы.

Ключевые команды: CREATE INDEX, CREATE UNIQUE INDEX, CREATE FULLTEXT INDEX, EXPLAIN.

Минимальный пример: CREATE INDEX idx_students_age ON students(age), затем EXPLAIN SELECT * FROM students WHERE age = 20.

Индекс полезен для частых фильтров, сортировок и группировок, но он занимает место и замедляет вставку, обновление и удаление.

Топ-3 ошибки: индексировать все столбцы подряд, не проверять план через EXPLAIN, ждать пользы от индекса на очень маленькой таблице.

📖 О чём это занятие

  • Разберём, что такое оптимизация запросов и почему индексы ускоряют поиск.
  • Изучим типы индексов MySQL: PRIMARY KEY, UNIQUE INDEX, обычный INDEX, FULLTEXT INDEX, составной индекс.
  • Сравним работу запроса без индекса и с индексом.
  • Выполним практику с таблицей students и командой EXPLAIN.

📚 Что повторить перед изучением

🎯 Что изучать дальше

Следующее занятие — Занятие 42: Функции.