Встречается на собеседованиях • сегодня
Как начнешь разбираться в сложном и медленном запросе в базу данных
Сначала проверяю EXPLAIN запроса, чтобы понять план выполнения: какие индексы используются, есть ли full table scans, сортировки во временных таблицах.
Затем анализирую:
- Индексы - есть ли подходящие, используются ли они
- JOIN'ы - не делаются ли лишние соединения
- WHERE условия - оптимальны ли условия фильтрации
- Подзапросы - можно ли заменить на JOIN
Пример:
sql
EXPLAIN SELECT * FROM orders
WHERE customer_id = 100
ORDER BY created_at DESC;Если вижу filesort или ALL в type - добавляю индекс:
sql
CREATE INDEX idx_customer_created ON orders(customer_id, created_at DESC);Также проверяю логи медленных запросов (slow query log) и метрики времени выполнения.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы