Встречается на собеседованиях • сегодня
Как понять что запросы попадает в индекс
В PostgreSQL можно проверить, используется ли индекс для запроса с помощью EXPLAIN ANALYZE. Если в выводе видно Index Scan или Bitmap Index Scan, значит индекс используется. Пример:
sql
EXPLAIN ANALYZE SELECT * FROM users WHERE email = 'test@example.com';Если создан индекс на поле email, в выводе будет что-то вроде:
text
Index Scan using idx_users_email on users (cost=0.42..8.44 rows=1 width=68)В Django ORM можно проверить запросы через connection.queries:
python
from django.db import connection
User.objects.filter(email='test@example.com').first()
print(connection.queries[-1]['sql'])Также полезные инструменты:
pg_stat_all_indexes- статистика использования индексовdjango-debug-toolbarдля анализа запросов в веб-интерфейсе
Если индекс не используется, возможные причины:
- Низкая селективность (мало уникальных значений)
- Несоответствие типов данных
- Слишком маленькая таблица (оптимизатор выбирает seq scan)

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