Skinnysite.net

... un modo di esprimersi.

Font Size

Cpanel

Homa Page di Daniele Franceschini

Verifica dei tempi di esecuzione di una query

Valutazione attuale:  / 3
ScarsoOttimo 

In alcune occasioni, in cui le query devono essere ottimizzate perché lavorano su grandi quantità di dati, durante le nostre prove per scrivere sql che siano più performanti, risulta necessario verificarne i tempi di esecuzione. Transact-SQL mette a disposizione il comando "SET STATISTICS TIME ON" che permette di avere un report riepilogativo dei tempi dettagliati per l'interpretazione, la compilazione e l'esecuzione di una interrogazione. Tuttavia, proprio perché il report è dettagliato, in alcuni casi come ad esempio le stored procedure (che al loro interno possono contenere più interrogazioni), è necessario avere i tempi totali dell'esecuzione e non quelli dettagliati. Per fare fronte a questa esigenza, ho inserito nello script anche un esempio per ottenere questo risultato.


--RIEPILOGO DETTAGLIATO DEI TEMPI DI ESECUZIONE DELLE INTERROGAZIONI
--ATTRAVERSO L'USO DEL COMANDO “SET STATISTICS TIME ON”
SET STATISTICS TIME ON
--QUI DEVE ESSERE INSERITA LA CHIAMATA ALLA STORED PROCEURE, VISTA
--O QUERY ESPLICITA
SET STATISTICS TIME OFF


--QUESTO PICCOLO SCRIPT PERMETTE DI VISUALIZZARE IL TEMPO TOTALE
--IMPIEGATO PER L'ESECUSIONE DELLE CHIAMATE AD UNA STORED PROCEDRE,
--VISTA O INTERROGAZIONI ESPLICITE
DECLARE @start_time DATETIME
SELECT @start_time = GETDATE()
--QUI DEVE ESSERE INSERITA LA CHIAMATA ALLA STORED PROCEURE, VISTA
--O QUERY ESPLICITA
SELECT 'Elapsed time, ms' = DATEDIFF( ms, @start_time, GETDATE() )

Sei qui: Home Code Snippets Transact-SQL Verifica dei tempi di esecuzione di una query