Comparer les temps d’exécution d'une requête
Bonjour à tous,
Je souhaiterai pouvoir comparer le temps d’exécution d'une requête. Pour cela j'ai essayé de la répéter quelques centaines de fois dans mon SQL Server Management Studio.
Pour information, je travail avec SQL SERVER 2008.
Comme ceci :
Code:
1 2 3 4 5
| SELECT * FROM T_PERSONNE
GO
SELECT * FROM T_PERSONNE
GO
... |
Je divise ensuite le nombre de requête par le temps d'exécution pour obtenir le temps d'exécution moyen de ma requête.
Hélas, entre deux test de ce - benchmark - (a prendre bien entre des pincettes), les temps moyens sont vraiment différents d'une exécution à l'autre, et cela m’empêche de comparer avec d'autres type de requête comme par exemple :
Code:
SELECT NOM, PRENOM, ADRESSE FROM T_PERSONNE
ou
Code:
SELECT NOM, PRENOM, ADRESSE FROM dbo.T_PERSONNE
J'avais tenté de faire cela :
Code:
1 2 3 4 5 6 7
| DECLARE @I INT
SET @I =1
WHILE @I < 300
BEGIN
SELECT * FROM T_PERSONNE
END |
Mais le delta entre deux exécutions sont toujours gênant pour bien se rendre compte de l'impact des différentes écritures possibles.
Auriez-vous une idée d'une bonne façon de procéder ?
Merci,
Etanne