sys.dm_exec_query_stats

Mis à jour : 12 décembre 2006

Retourne les statistiques sur les performances des agrégats pour les plans de requêtes mis en cache. La vue contient une ligne par instruction de requête dans le plan en cache, et la durée de vie des lignes est liée au plan lui-même. Lorsqu'un plan est supprimé du cache, les lignes correspondantes sont éliminées de cette vue.

ms189741.note(fr-fr,SQL.90).gifRemarque :
Une requête initiale de sys.dm_exec_query_stats peut produire des résultats inexacts si une charge de travail est actuellement exécutée sur le serveur. Des résultats plus précis peuvent être déterminés en réexécutant la requête.
Nom de la colonne Type de données Description

sql_handle

varbinary(64)

Est un jeton qui fait référence au lot ou à la procédure stockée dont fait partie la requête.

sql_handle, combiné avec statement_start_offset et statement_end_offset, peut s'utiliser pour extraire le texte SQL de la requête en appelant la fonction de gestion dynamique sys.dm_exec_sql_text.

statement_start_offset

int

Indique, en octets, la position de début (à partir de 0) de la requête que la ligne décrit dans le texte de son lot ou de son objet persistant.

statement_end_offset

int

Indique, en octets, la position de fin (à partir de 0) de la requête que la ligne décrit dans le texte de son lot ou de son objet persistant. La valeur -1 indique la fin du lot.

plan_generation_num

bigint

Numéro de séquence permettant de distinguer les instances de plans après une recompilation.

plan_handle

varbinary(64)

Jeton qui fait référence au plan compilé dont fait partie la requête. Cette valeur peut être passée à la fonction de gestion dynamique sys.dm_exec_query_plan pour obtenir le plan de requête.

creation_time

datetime

Heure de compilation du plan.

last_execution_time

datetime

Heure de dernière exécution du plan.

execution_count

bigint

Nombre d'exécutions du plan depuis sa dernière compilation.

total_worker_time

bigint

Temps processeur total, en microsecondes, consommé par les exécutions de ce plan depuis sa compilation.

last_worker_time

bigint

Temps processeur, en microsecondes, consommé lors de la dernière exécution du plan.

min_worker_time

bigint

Temps processeur minimal, en microsecondes, consommé par ce plan lors d'une seule exécution.

max_worker_time

bigint

Temps processeur maximal, en microsecondes, consommé par ce plan lors d'une seule exécution.

total_physical_reads

bigint

Nombre total de lectures physiques effectuées par les exécutions de ce plan depuis sa compilation.

last_physical_reads

bigint

Nombre de lectures physiques effectuées lors de la dernière exécution du plan.

min_physical_reads

bigint

Nombre minimal de lectures physiques effectuées par ce plan lors d'une seule exécution.

max_physical_reads

bigint

Nombre maximal de lectures physiques effectuées par ce plan lors d'une seule exécution.

total_logical_writes

bigint

Nombre total d'écritures logiques effectuées par les exécutions de ce plan depuis sa compilation.

last_logical_writes

bigint

Nombre d'écritures logiques effectuées lors de la dernière exécution du plan.

min_logical_writes

bigint

Nombre minimal d'écritures logiques effectuées par ce plan lors d'une seule exécution.

max_logical_writes

bigint

Nombre maximal d'écritures logiques effectuées par ce plan lors d'une seule exécution.

total_logical_reads

bigint

Nombre total de lectures logiques effectuées par les exécutions de ce plan depuis sa compilation.

last_logical_reads

bigint

Nombre de lectures logiques effectuées lors de la dernière exécution du plan.

min_logical_reads

bigint

Nombre minimal de lectures logiques effectuées par ce plan lors d'une seule exécution.

max_logical_reads

bigint

Nombre maximal de lectures logiques effectuées par ce plan lors d'une seule exécution.

total_clr_time

bigint

Temps, en microsecondes, consommé dans les objets CLR (Common Language Runtime) Microsoft .NET Framework par les exécutions de ce plan depuis sa compilation. Les objets CLR peuvent être des procédures stockées, des fonctions, des déclencheurs, des types et des agrégats.

last_clr_time

bigint

Temps consommé par l'exécution dans les objets CLR .NET Framework lors de la dernière exécution de ce plan. Les objets CLR peuvent être des procédures stockées, des fonctions, des déclencheurs, des types et des agrégats.

min_clr_time

bigint

Temps minimal, en microsecondes, consommé par ce plan dans les objets CLR .NET Framework lors d'une seule exécution. Les objets CLR peuvent être des procédures stockées, des fonctions, des déclencheurs, des types et des agrégats.

max_clr_time

bigint

Temps maximal, en microsecondes, consommé par ce plan dans le CLR .NET Framework lors d'une seule exécution. Les objets CLR peuvent être des procédures stockées, des fonctions, des déclencheurs, des types et des agrégats.

total_elapsed_time

bigint

Temps total écoulé, en microsecondes, pour les exécutions de ce plan.

last_elapsed_time

bigint

Temps écoulé, en microsecondes, pour la dernière exécution de ce plan.

min_elapsed_time

bigint

Temps minimal écoulé, en microsecondes, pour les différentes exécutions de ce plan.

max_elapsed_time

bigint

Temps maximal écoulé, en microsecondes, pour les différentes exécutions de ce plan.

Autorisations

Nécessite l'autorisation VIEW SERVER STATE sur le serveur.

Notes

Les statistiques de la vue sont actualisées lorsqu'une requête est terminée.

Exemples

L'exemple suivant retourne des informations sur les cinq principales requêtes d'après le temps CLR moyen.

SELECT TOP 5 creation_time, last_execution_time, total_clr_time,
    total_clr_time/execution_count AS [Avg CLR Time], last_clr_time,
    execution_count, 
    SUBSTRING(st.text, (qs.statement_start_offset/2) + 1,
    ((CASE statement_end_offset 
        WHEN -1 THEN DATALENGTH(st.text)
        ELSE qs.statement_end_offset END 
            - qs.statement_start_offset)/2) + 1) as statement_text
FROM sys.dm_exec_query_stats as qs
CROSS APPLY sys.dm_exec_sql_text(qs.sql_handle) as st
ORDER BY total_clr_time/execution_count DESC;
GO

Voir aussi

Référence

Fonctions et vues de gestion dynamique
Fonctions et vues de gestion dynamique liées à l'exécution
sys.dm_exec_sql_text
sys.dm_exec_query_plan

Aide et Informations

Assistance sur SQL Server 2005

Historique des modifications

Version Historique

12 décembre 2006

Contenu modifié :
  • Correction des définitions des colonnes sql_handle, plan_generation_num et plan_handle.

14 avril 2006

Contenu modifié :
  • Correction de l'exemple.

5 décembre 2005

Nouveau contenu :
  • Une remarque a été ajoutée concernant la nécessité d'interroger cette vue de gestion dynamique plusieurs fois pour obtenir des résultats plus précis si une charge de travail est actuellement exécutée sur le serveur.
  • Une explication a été fournie, indiquant que les colonnes statement_end_offset et statement_start_offset sont comptées à partir de zéro et que la valeur -1 dans la colonne statement_end_offset indique la fin du lot.