sys.dm_db_incremental_stats_properties (Transact-SQL)
S'applique à : SQL Server
Retourne les propriétés des statistiques incrémentielles pour l’objet de base de données spécifié (table) dans la base de données SQL Server actuelle. L’utilisation de sys.dm_db_incremental_stats_properties
(qui contient un numéro de partition) est similaire à celle de sys.dm_db_stats_properties
qui est utilisé pour les statistiques non incrémentielles.
Cette fonction a été introduite dans SQL Server 2014 (12.x) Service Pack 2 et SQL Server 2016 (13.x) Service Pack 1.
Syntaxe
sys.dm_db_incremental_stats_properties (object_id, stats_id)
Arguments
object_id
ID de l’objet dans la base de données active dont les propriétés d’une de ses statistiques incrémentielles sont demandées. l’object_id est int.
stats_id
ID des statistiques pour l’object_id. spécifié. L’ID des statistiques peut être obtenu à partir de la vue de gestion dynamique sys.stats . stats_id correspond à int.
Table retournée
Nom de la colonne | Type de données | Description |
---|---|---|
object_id | int | ID de l’objet (table) pour lequel retourner les propriétés de l’objet de statistiques. |
stats_id | int | ID de l'objet de statistiques. Est unique dans la table. Pour plus d’informations, consultez sys.stats (Transact-SQL). |
partition_number | int | Numéro de la partition contenant la partie de la table. |
last_updated | datetime2 | Date et heure de la dernière mise à jour de l'objet de statistiques. Pour plus d’informations, consultez la section Notes dans cette page. |
rows | bigint | Nombre total de lignes dans la table 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. |
rows_sampled | bigint | Nombre total de lignes échantillonnées pour le calcul des statistiques. |
steps | int | Nombre d'étapes dans l'histogramme. Pour plus d’informations, consultez DBCC SHOW_STATISTICS (Transact-SQL). |
unfiltered_rows | bigint | Nombre total de lignes dans la table avant l'application de l'expression de filtre (pour les statistiques filtrées). Si les statistiques ne sont pas filtrées, unfiltered_rows est égal à la valeur retournée dans la colonne rows. |
modification_counter | bigint | Nombre total de modifications de la première colonne de statistiques (la colonne sur laquelle l'histogramme est construit) depuis la dernière mise à jour des statistiques. Cette colonne ne contient pas d'informations pour les tables mémoire optimisées. |
Notes
sys.dm_db_incremental_stats_properties
retourne un ensemble de lignes vide sous chacune des conditions suivantes :
object_id
oustats_id
est NULL.- L’objet spécifié est introuvable ou ne correspond à aucune table avec des statistiques incrémentielles.
- L'ID de statistiques spécifié ne correspond pas à des statistiques existantes pour l'ID d'objet spécifié.
- L'utilisateur actuel n'est pas autorisé à afficher l'objet de statistiques.
Ce comportement permet d’utiliser sys.dm_db_incremental_stats_properties
en toute sécurité lorsqu’un croisement est appliqué aux lignes dans les vues telles que sys.objects
et sys.stats
. Cette méthode peut retourner des propriétés pour les statistiques qui correspondent à chaque partition. Pour afficher les propriétés pour les statistiques fusionnées combinées sur toutes les partitions, utilisez sys.dm_db_stats_properties à la place.
La date de mise à jour des statistiques est stockée dans l’objet blob de statistiques avec l’histogramme et le vecteur de densité, et non dans les métadonnées. Lorsqu’aucune donnée n’est lue pour générer des données de statistiques, l’objet blob de statistiques n’est pas créé, la date n’est pas disponible et la colonne last_updated a la valeur NULL. C’est le cas pour les statistiques filtrées pour lesquelles le prédicat ne renvoie aucune ligne, ou pour les nouvelles tables vides.
autorisations
L'utilisateur doit avoir sélectionné des autorisations sur les colonnes de statistiques, ou bien il doit être le propriétaire de la table, ou encore il doit ê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
.
Exemples
R. Exemple simple
L’exemple suivant retourne les statistiques pour la table PartitionTable
décrite dans la rubrique Créer des tables et des index partitionnés.
SELECT * FROM sys.dm_db_incremental_stats_properties (object_id('PartitionTable'), 1);
Pour des suggestions d’utilisation supplémentaires, consultez sys.dm_db_stats_properties.
Voir aussi
DBCC SHOW_STATISTICS (Transact-SQL)
sys.stats (Transact-SQL)
Vues et fonctions de gestion dynamique relatives aux objets (Transact-SQL)
Fonctions et vues de gestion dynamique (Transact-SQL)
sys.dm_db_stats_properties
sys.dm_db_stats_histogram (Transact-SQL)