No SQL Server, você pode usar o
SET STATISTICS IO
para gerar informações detalhadas sobre a quantidade de atividade de disco gerada por uma instrução T-SQL. Em ferramentas gráficas como SSMS e Azure Data Studio, você pode visualizar essas informações em Mensagens aba.
Exemplo
Aqui está um exemplo simples para demonstrar.
SET STATISTICS IO ON;
SELECT
c.CityName,
s.StateProvinceName AS State,
c.LatestRecordedPopulation AS Population
FROM Application.Cities c
INNER JOIN Application.StateProvinces s
ON c.StateProvinceID = s.StateProvinceID
WHERE c.LatestRecordedPopulation > 2000000
ORDER BY c.LatestRecordedPopulation DESC;
Inicialmente, você provavelmente verá os resultados da consulta normalmente:
Para visualizar a saída de
STATISTICS IO
, clique em Mensagens aba:Este exemplo foi feito no Azure Data Studio e é o mesmo processo ao usar o SSMS. No entanto, as etapas reais que você precisa usar podem depender da ferramenta usada para se conectar ao SQL Server.
Abaixo está uma cópia do
STATISTICS IO
mensagem da captura de tela acima:(6 rows affected) Table 'Worktable'. Scan count 0, logical reads 0, physical reads 0, page server reads 0, read-ahead reads 0, page server read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob page server reads 0, lob read-ahead reads 0, lob page server read-ahead reads 0. Table 'Workfile'. Scan count 0, logical reads 0, physical reads 0, page server reads 0, read-ahead reads 0, page server read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob page server reads 0, lob read-ahead reads 0, lob page server read-ahead reads 0. Table 'StateProvinces'. Scan count 1, logical reads 2, physical reads 0, page server reads 0, read-ahead reads 0, page server read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob page server reads 0, lob read-ahead reads 0, lob page server read-ahead reads 0. Table 'Cities'. Scan count 1, logical reads 497, physical reads 0, page server reads 0, read-ahead reads 0, page server read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob page server reads 0, lob read-ahead reads 0, lob page server read-ahead reads 0. Total execution time: 00:00:00.027
Como desativá-lo
Configurando
STATISTICS IO
para ON
afeta todas as instruções T-SQL subsequentes até que seja desativado. Para desativá-lo, basta executá-lo novamente usando
OFF
em vez de ON
:SET STATISTICS IO OFF;