Опорная идея
Индекс помогает базе находить строки быстрее, но не является бесплатным. Он занимает место, замедляет запись и должен соответствовать запросам. EXPLAIN показывает, как PostgreSQL собирается выполнять запрос: scan type, join strategy, estimated rows и cost. Без EXPLAIN оптимизация превращается в угадывание.
Хороший индекс проектируют от WHERE, JOIN, ORDER BY и cardinality, а не от желания индексировать каждую колонку.