Notes
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
S’applique à : SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analytics Platform System (PDW)
Base de données SQL dans Microsoft Fabric
Vous pouvez afficher des statistiques d’optimisation des requêtes actuelles pour une table ou une vue indexée dans SQL Server à l’aide de SQL Server Management Studio ou de Transact-SQL. Les objets de statistiques incluent un en-tête contenant des métadonnées sur les statistiques, un histogramme indiquant la distribution des valeurs dans la première colonne clé de l'objet des statistiques, et un vecteur de densité destiné à mesurer la corrélation entre les colonnes. Pour plus d’informations sur les histogrammes et les vecteurs de densité, consultez DBCC SHOW_STATISTICS (Transact-SQL)
Dans cette rubrique
Avant de commencer :
Pour afficher les propriétés des statistiques, utilisez :
Avant de commencer
Sécurité
autorisations
Pour afficher l’objet de statistiques, l’utilisateur doit être propriétaire de la table ou être membre du rôle serveur fixe sysadmin , du rôle de base de données fixe db_owner ou du rôle de base de données fixe db_ddladmin .
Utilisation de SQL Server Management Studio
Pour afficher les propriétés des statistiques
Dans l' Explorateur d'objets, cliquez sur le signe plus (+) pour développer la base de données dans laquelle vous souhaitez créer une nouvelle statistique.
Cliquez sur le signe plus (+) pour développer le dossier Tables .
Cliquez sur le signe plus (+) pour développer la table dans laquelle vous souhaitez afficher les propriétés de la statistique.
Cliquez sur le signe plus (+) pour développer le dossier Statistiques .
Cliquez avec le bouton droit sur l’objet Statistiques dont vous voulez afficher les propriétés, puis sélectionnez Propriétés.
Dans la boîte de dialogue Propriétés des statistiques - nom_statistiques, dans le volet Sélectionner une page , sélectionnez Détails.
Les propriétés suivantes s’affichent dans la page Détails de la boîte de dialogue Propriétés des statistiques - nom_statistiques.
Nom de la table
Affiche le nom de la table décrite par les statistiques.Nom des statistiques
Spécifie le nom de l'objet de base de données dans lequel les statistiques sont stockées.Statistiques de l’INDEX statistics_name
Cette zone de texte affiche les propriétés retournées par l'objet de statistiques. Ces propriétés sont divisées en trois sections : en-tête de statistiques, vecteur de densité et histogramme.Les informations suivantes décrivent les colonnes retournées dans le jeu de résultats de l'en-tête de statistiques.
Nom
Nom de l'objet de statistiques.Updated
Date et heure de la dernière mise à jour des statistiques.Lignes
Nombre total de lignes dans la table ou la vue indexée au moment de la dernière mise à jour des statistiques. Si les statistiques sont filtrées ou correspondent à un index filtré, le nombre de lignes peut être inférieur à celui de la table.Lignes échantillonnées
Nombre total de lignes échantillonnées pour le calcul des statistiques. Si Échantillon de lignes < Lignes, l'histogramme et les résultats de densité affichés sont des estimations basées sur les échantillons de lignes.Étapes
Nombre d'étapes dans l'histogramme. Chaque étape couvre une plage de valeurs de colonnes suivie d'une valeur de colonne de limite supérieure. Les étapes d'histogramme sont définies sur la première colonne clé des statistiques. Le nombre maximal d'étapes est 200.Densité
La formule 1 / valeurs distinctes est utilisée pour toutes les valeurs de la première colonne clé de l’objet de statistiques, à l’exception des valeurs limites de l’histogramme. Cette valeur de densité n'est pas utilisée par l'optimiseur de requête ; elle est affichée pour la compatibilité descendante avec les versions antérieures à SQL Server 2008.Longueur moyenne d'une clé
Nombre moyen d'octets par valeur pour toutes les colonnes clés de l'objet de statistiques.String Index
La valeur Yes indique que l'objet de statistiques contient des statistiques de résumé de chaîne pour améliorer les estimations de cardinalité des prédicats de requête qui utilisent l'opérateur LIKE ; c'est le cas par exemple deWHERE ProductName LIKE '%Bike'
. Les statistiques de résumé de chaîne sont stockées à l’écart de l’histogramme et créées sur la première colonne clé de l’objet de statistiques quand il est de type char, varchar, nchar, nvarchar, varchar(max), nvarchar(max), textou ntext.Expression de filtre
Prédicat pour le sous-ensemble des lignes de table incluses dans l'objet de statistiques. NULL = statistiques non filtrées.Lignes non filtrées
Nombre total de lignes dans la table avant l'application de l'expression de filtre. Si Expression de filtre a la valeur NULL, Lignes non filtrées est égal à Lignes.Les informations suivantes décrivent les colonnes retournées dans le jeu de résultats du vecteur de densité.
Toutes les densités
La densité est calculée selon la formule 1 / valeurs distinctes. Les résultats affichent la densité pour chaque préfixe des colonnes de l'objet de statistiques, à raison d'une ligne par densité. Une valeur distincte est une liste distincte des valeurs de colonnes par ligne et par préfixe de colonne. Par exemple, si l'objet de statistiques contient des colonnes clés (A, B, C), les résultats rapportent la densité des listes distinctes de valeurs dans chacun des préfixes de colonnes suivants : (A), (A,B) et (A, B, C). Avec le préfixe (A, B, C), chacune des listes suivantes est une liste de valeurs distincte : (3, 5, 6), (4, 4, 6), (4, 5, 6), (4, 5, 7). Avec le préfixe (A, B), les listes de valeurs distinctes suivantes sont associées aux mêmes valeurs de colonnes : (3, 5), (4, 4) et (4, 5).Longueur moyenne
Longueur moyenne, en octets, pour le stockage d'une liste des valeurs de colonnes pour le préfixe de colonne. Par exemple, si les valeurs dans la liste (3, 5, 6) nécessitent 4 octets chacune, la longueur est égale à 12 octets.Colonnes
Noms des colonnes dans le préfixe dont les valeurs Toutes les densités et Longueur moyenne sont affichées.Les informations suivantes décrivent les colonnes retournées dans le jeu de résultats de l'histogramme.
RANGE_HI_KEY
Valeur de colonne de limite supérieure pour une étape d'histogramme. La valeur de colonne est également appelée « valeur de clé ».RANGE_ROWS
Nombre estimé de lignes dont la valeur de colonne est comprise dans une étape d'histogramme, à l'exception de la limite supérieure.EQ_ROWS
Nombre estimé de lignes dont la valeur de colonne est égale à la limite supérieure de l'étape d'histogramme.DISTINCT_RANGE_ROWS
Nombre estimé de lignes ayant une valeur de colonne distincte dans une étape d'histogramme, à l'exception de la limite supérieure.AVG_RANGE_ROWS
Nombre moyen de lignes ayant des valeurs de colonnes dupliquées dans une étape d’histogramme, à l’exception de la limite supérieure (RANGE_ROWS / DISTINCT_RANGE_ROWS pour DISTINCT_RANGE_ROWS > 0).Cliquez sur OK.
Utilisation de Transact-SQL
Pour afficher les propriétés des statistiques
Dans l' Explorateur d'objets, connectez-vous à une instance du Moteur de base de données.
Dans la barre d'outils standard, cliquez sur Nouvelle requête.
Copiez et collez l'exemple suivant dans la fenêtre de requête, puis cliquez sur Exécuter.
USE AdventureWorks2022; GO -- The following example displays all statistics information for the AK_Address_rowguid index of the Person.Address table. DBCC SHOW_STATISTICS ("Person.Address", AK_Address_rowguid); GO
Pour plus d’informations, consultez DBCC SHOW_STATISTICS (Transact-SQL).
Pour rechercher toutes les statistiques sur une table ou une vue
Dans l' Explorateur d'objets, connectez-vous à une instance du Moteur de base de données.
Dans la barre d'outils standard, cliquez sur Nouvelle requête.
Copiez et collez l'exemple suivant dans la fenêtre de requête, puis cliquez sur Exécuter.
USE AdventureWorks2022; GO /*Gets the following information: name and ID of the statistics, whether the statistics were created automatically or by the user, whether the statistics were created with the NORECOMPUTE option, and whether the statistics have a filter and, if so, what that filter is. */ SELECT name AS statistics_name ,stats_id ,auto_created ,user_created ,no_recompute ,has_filter ,filter_definition -- using the sys.stats catalog view FROM sys.stats -- for the Sales.SpecialOffer table WHERE object_id = OBJECT_ID('Sales.SpecialOffer'); GO
Pour plus d’informations, consultez sys.stats (Transact-SQL).