Bruno Perroni
DBA SQL Server com mais de 6 anos de experiência!

Verificando Estatísticas de um Banco de Dados

Eae pessoal.

Nesse artigo venho trazer um script bem básico para a verificação das estatísticas das tabelas de um determinado banco de dados, bem como a sua atualização.

Esse é o tipo de script que não pode faltar no toolset de um bom DBA.

Pois é uma das primeiras verificações a ser feita quando um problema de performance nos é reportado.

SELECT schema_name(schema_id) AS NomeSchema
	,object_name(o.object_id) AS NomeTabela
	,i.NAME AS NomeIndex
	,index_id IndexId
	,o.type Tipo
	,STATS_DATE(o.object_id, index_id) AS DataEstatistica
FROM sys.indexes i
JOIN sys.objects o ON i.object_id = o.object_id
WHERE o.object_id > 100
	AND index_id > 0
	AND is_ms_shipped = 0;

Uma vez que foi verificado que existem estatísticas, muito desatualizadas podemos efetuar a atualização de diversas formas.

Podemos atualizar todo o banco de dados.

EXEC sp_updatestats;

Podemos atualizar uma tabela.

UPDATE STATISTICS <banco>.<schema>.<tabela>; 
GO

Ou podemos atualizar um índice especifico.

UPDATE STATISTICS <banco>.<schema>.<tabela> <indice>; 
GO