sql >> Base de Datos >  >> RDS >> PostgreSQL

¿Por qué PostgreSQL (9.1) no usa el índice para la selección de igualdad simple?

Para solucionar estos problemas, es imperativo que ejecute VACUUM ANALYZE en la mesa entre los pasos de resolución de problemas para ver qué funciona. De lo contrario, es posible que no sepa exactamente qué cambió dónde. Así que intente eso y vuelva a ejecutar primero y vea si soluciona el problema.

Los siguientes pasos a ejecutar (ejecutar un análisis de vacío y un caso de prueba entre cada uno) son:

ALTER TABLE lead ALTER COLUMN email SET STATISTICS 1000;

Tal vez eso lo arregle. Tal vez no.

Si eso no soluciona el problema, eche un vistazo de cerca a la vista pg_stat:

SELECT * FROM pg_stat WHERE table_name = 'lead';

Lea atentamente lo siguiente y vea lo que puede ver que está mal en pg_stat;

http://www.postgresql.org/docs/9.0/static /planner-stats.html

EDITAR:Para ser muy claro, vacuum analyse no es la totalidad de la solución de problemas. Sin embargo, DEBE ejecutarse entre los pasos de solución de problemas porque, de lo contrario, no puede estar seguro de que el planificador esté tomando en cuenta los datos correctos.