Partager via


sys.stats (Transact-SQL)

S’applique à :SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)SQL analytics endpoint in Microsoft FabricWarehouse in Microsoft Fabric

Contient une ligne pour chaque objet de statistiques qui existe pour les tables, index et vues indexées de la base de données dans SQL Server. Chaque index a une ligne de statistiques correspondante portant le même nom et id (index_id = stats_id), mais pas chaque ligne de statistiques a un index correspondant.

L’affichage catalogue, sys.stats_columns, fournit des informations de statistiques pour chaque colonne de la base de données.

Pour plus d’informations sur les statistiques, consultez Statistiques.

Notes

Pour plus d’informations sur les statistiques dans Microsoft Fabric, consultez Statistiques dans Fabric Data Warehouse.

Nom de la colonne Type de données Description
object_id int ID de l'objet auquel ces statistiques appartiennent.
name sysname Nom des statistiques. Unique dans l'objet.
stats_id int ID des statistiques. Unique dans l'objet.

Si les statistiques correspondent à un index, la valeur stats_id est identique à la valeur index_id dans l’affichage catalogue sys.indexes.
auto_created bit Indique si les statistiques ont été créées automatiquement par SQL Server.

0 = Les statistiques n’ont pas été créées automatiquement par SQL Server.

1 = Les statistiques ont été créées automatiquement par SQL Server.
user_created bit Indique si les statistiques ont été créées par un utilisateur.

0 = Les statistiques n’ont pas été créées par un utilisateur.

1 = Les statistiques ont été créées par un utilisateur.
no_recompute bit Indique si les statistiques ont été créées avec l’option NORECOMPUTE .

0 = Les statistiques n’ont pas été créées avec l’option NORECOMPUTE .

1 = Les statistiques ont été créées avec l’option NORECOMPUTE .
has_filter bit 0 = Les statistiques n’ont pas de filtre et sont calculées sur toutes les lignes.

1 = Les statistiques ont un filtre et sont calculées uniquement sur les lignes qui satisfont la définition de filtre.
filter_definition nvarchar(max) Expression pour le sous-ensemble de lignes inclus dans les statistiques filtrées.

NULL = Statistiques non filtrées.
is_temporary bit Indique si les statistiques sont temporaires. Les statistiques temporaires prennent en charge les bases de données secondaires de groupes de disponibilité AlwaysOn qui sont activés pour un accès en lecture seule.

0 = Les statistiques ne sont pas temporaires.

1 = Les statistiques sont temporaires.

S’applique à : SQL Server
is_incremental bit Indiquez si les statistiques sont créées comme statistiques incrémentielles.

0 = Les statistiques ne sont pas incrémentielles.

1 = Les statistiques sont incrémentielles.

S’applique à : SQL Server 2014 (12.x) et ultérieur.
has_persisted_sample bit Indique si les statistiques ont été créées ou mises à jour avec l’option PERSIST_SAMPLE_PERCENT .

0 = Les statistiques ne conservent pas le pourcentage d’échantillon.

1 = Les statistiques ont été créées ou mises à jour avec l’option PERSIST_SAMPLE_PERCENT .

S’applique à : SQL Server 2019 (15.x) et versions ultérieures.
stats_generation_method int Indique la méthode par laquelle les statistiques sont créées.

0 = Statistiques basées sur le tri

1 = pour usage interne uniquement

S’applique à : SQL Server 2019 (15.x) et versions ultérieures.
stats_generation_method_desc varchar(255) Description textuelle de la méthode par laquelle les statistiques sont créées.

Statistiques basées sur le tri

À usage interne uniquement

S’applique à : SQL Server 2019 (15.x) et versions ultérieures.
auto_drop bit Indique si la fonctionnalité de suppression automatique est activée pour cet objet de statistiques. La AUTO_DROP propriété permet la création d’objets de statistiques dans un mode de sorte qu’une modification de schéma ultérieure n’est pas bloquée par l’objet statistique, mais que les statistiques sont supprimées si nécessaire. De cette façon, créez manuellement des statistiques avec activé, AUTO_DROP comme les statistiques autocréées. Pour plus d’informations, consultez Option AUTO_DROP.

S’applique à : SQL Server 2022 (16.x) et versions ultérieures, Azure SQL Database, Azure SQL Managed Instance.
replica_role_id tinyint Indique le réplica dans lequel les statistiques automatiques ont été mises à jour pour la dernière fois.

1 = Principal

2 = Secondaire

3 = Géo secondaire

4 = Géo-haute disponibilité secondaire

S’applique à : SQL Server 2025 (17.x) Préversion et versions ultérieures, Azure SQL Database, Azure SQL Managed Instance.
replica_role_desc nvarchar(60) Primaire, Secondaire, Secondaire Géographique, Secondaire HA Géographique

S’applique à : SQL Server 2025 (17.x) Préversion et versions ultérieures, Azure SQL Database, Azure SQL Managed Instance.
replica_name sysname Nom de l’instance du réplica dans le groupe de disponibilité. NULL pour le réplica principal

S’applique à : SQL Server 2025 (17.x) Préversion et versions ultérieures, Azure SQL Database, Azure SQL Managed Instance

autorisations

La visibilité des métadonnées dans les affichages catalogue est limitée aux éléments sécurisables qu'un utilisateur détient ou pour lesquels des autorisations lui ont été accordées. Pour plus d’informations, consultez la configuration de la visibilité des métadonnées.

Exemples

Les exemples suivants retournent toutes les statistiques et les colonnes de statistiques de la table HumanResources.Employee.

USE AdventureWorks2022;
GO

SELECT s.name AS statistics_name,
       c.name AS column_name,
       sc.stats_column_id
FROM sys.stats AS s
     INNER JOIN sys.stats_columns AS sc
         ON s.object_id = sc.object_id
        AND s.stats_id = sc.stats_id
     INNER JOIN sys.columns AS c
         ON sc.object_id = c.object_id
        AND c.column_id = sc.column_id
WHERE s.object_id = OBJECT_ID('HumanResources.Employee');