sql >> Database >  >> RDS >> PostgreSQL

Waarom gebruikt PostgreSQL (9.1) geen index voor eenvoudige selectie van gelijkheid?

Om deze problemen op te lossen, is het noodzakelijk dat u VACUUM ANALYZE op de tafel uitvoert tussen de stappen voor probleemoplossing om te zien wat werkt. Anders weet u misschien niet precies wat waar is gewijzigd. Dus probeer dat en voer het eerst opnieuw uit en kijk of het probleem hiermee is opgelost.

De volgende stappen die moeten worden uitgevoerd (een vacuümanalyse en een testcase tussen elke stap uitvoeren) zijn:

ALTER TABLE lead ALTER COLUMN email SET STATISTICS 1000;

Misschien lost dat het op. Misschien niet.

Als dat het probleem niet oplost, kijk dan eens goed naar de pg_stat-weergave:

SELECT * FROM pg_stat WHERE table_name = 'lead';

Lees het volgende aandachtig door en kijk wat u ziet dat er niet klopt in pg_stat;

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

EDIT:Voor de duidelijkheid:vacuum analyse is niet het geheel van het oplossen van problemen. Het MOET echter tussen de stappen voor probleemoplossing worden uitgevoerd, omdat u anders niet zeker weet of de planner rekening houdt met de juiste gegevens.



  1. Hoe verbinding maken met localhost met postgres_fdw?

  2. JDBCTemplate set geneste POJO met BeanPropertyRowMapper

  3. SSIS Excel-import forceren van onjuist kolomtype

  4. Opties ophalen voor de tweede vervolgkeuzelijst uit DB op basis van de eerste vervolgkeuzelijst