Индексы.
Столкнулся с непоняткой.
Создал 10к записей в модели users. поля в модельке id, hash_firstname, hash_lastname, age. Проблемка такая, делаю индекс на поле age, при условии выборки, чтобы вытащить всех юзеров, болшье 10 лет, делаю where age > 10. Но, при explain analyze, почему то не видно, чтобы бд подхватывал индекс на это. ТО есть индекс есть, но он никак не используется почему-то. Есть предположения, в чем может быть проблемка?
10k записей быстрее выбрать без индекса, поэтому postgres его и не использует
хмм. то есть индекс вообще не будет использован? интересно. При каких тогда обстоятельств он будет заюзан postgres'ом?
например когда по статистике будет казаться что под условие попадёт одна запись или когда нужно вернуть в отсортированном виде результат и индекс подходит под условие сортировки
попробуйте where age < 10. возможно увидите разницу или where age = 10
интересно, я думал в любом случае отработает
действительно, отработал, спасибо за наводку
спасибо за пояснение, буду учитывать)
Обсуждают сегодня