sql >> Databasteknik >  >> RDS >> Sqlserver

Varför är denna SQL Server-statistik föråldrad när den är inställd på automatisk uppdatering?

Även om du ställer in Automatisk uppdateringsstatistik till sann, kommer den att uppdateras först när en tröskel har nåtts..detta är olika för olika versioner

Tröskelvärden för SQL Server 2012 eller äldre:

  1. Tabellstorleken har gått från 0 till> 0 rader

  2. Antalet rader i tabellen när statistiken samlades in var 500 eller mindre, och kolmodctr för den inledande kolumnen i statistikobjektet har ändrats med mer än 500 sedan dess

  3. Tabellen hade mer än 500 rader när statistiken samlades in, och kolmodctr för den ledande kolumnen i statistikobjektet har ändrats med mer än 500 + 20 % av antalet rader i tabellen när statistiken samlades in

För SQLServer 2016 finns det få större förändringar och SQL Updates-statistik med en ny algoritm (läs som oftare än gamla versioner)

Normalt schemalägger folk underhållsjobb under helgerna och detta inkluderar indexombyggnad/statistikuppdatering...

Detta bör normalt ta hand om de flesta databaser. I ditt fall, om du ser prestandaproblem på grund av ogiltig statistik, kan du uppdatera dem manuellt. Vi gör det en gång i veckan, men sajter som StackOverflow gör det oftare

update stats tablename

Ytterligare läsning/referenser:
Statistik som används av Query Optimizer i Microsoft SQL Server 2008
Förstå när statistik uppdateras automatiskt




  1. 19.3 PDB Stäng ORA-65107 ORA-16078

  2. Hur konfigurerar man Hibernate, Spring och Apache dbcp för anslutningspoolning?

  3. Förhindra användaren från att redigera samma post

  4. saknas FROM-klausulpost för tabellen Grupo cakephp