sys.dm_db_incremental_stats_properties (Transact-SQL)

Gilt für:SQL Server

Gibt Eigenschaften inkrementeller Statistiken für das angegebene Datenbankobjekt (Tabelle) in der aktuellen SQL Server-Datenbank zurück. Die Verwendung von sys.dm_db_incremental_stats_properties (die eine Partitionsnummer enthält) ähnelt sys.dm_db_stats_properties der für nicht-inkrementelle Statistiken.

Diese Funktion wurde in SQL Server 2014 (12.x) Service Pack 2 und SQL Server 2016 (13.x) Service Pack 1 eingeführt.

Syntax

sys.dm_db_incremental_stats_properties (object_id, stats_id)  

Argumente

object_id
Ist die ID des Objekts in der aktuellen Datenbank, für das Eigenschaften einer seiner inkrementellen Statistiken angefordert werden. object_id ist int.

stats_id
ID der Statistik für die angegebene object_id. Die Statistik-ID kann aus der dynamischen Verwaltungssicht sys.stats abgerufen werden. stats_id ist int.

Zurückgegebene Tabelle

Spaltenname Datentyp Description
object_id int ID des Objekts (der Tabelle), für die die Eigenschaften des Statistikobjekts zurückgegeben werden.
stats_id int Die ID des Statistikobjekts. Innerhalb der Tabelle einzigartig ist. Weitere Informationen finden Sie unter sys.stats (Transact-SQL).
partition_number int Zahl der Partition, die den Teil der Tabelle enthält.
last_updated datetime2 Datum und Uhrzeit der letzten Aktualisierung des Statistikobjekts. Weitere Informationen finden Sie im Abschnitt Hinweise dieses Artikels.
rows bigint Gesamtzahl der Zeilen in der Tabelle, als die Statistiken zuletzt aktualisiert wurden. Wenn die Statistik gefiltert wird oder einem gefilterten Index entspricht, kann die Anzahl der Zeilen geringer als die Anzahl der Zeilen in der Tabelle sein.
rows_sampled bigint Gesamtzahl der Zeilen, die für die statistischen Berechnungen in die Stichprobe aufgenommen wurden.
steps int Anzahl der Schritte im Histogramm. Weitere Informationen finden Sie unter DBCC SHOW_STATISTICS (Transact-SQL).
unfiltered_rows bigint Gesamtanzahl der Zeilen in der Tabelle vor dem Anwenden des Filterausdrucks (für gefilterte Statistiken). Wenn die Statistik nicht gefiltert ist, entspricht „unfiltered_rows“ dem in der rows-Spalte zurückgegebenen Wert.
modification_counter bigint Gesamtanzahl der Änderungen für die führende Statistikspalte (auf der das Histogramm basiert) seit der letzten Aktualisierung der Statistik.

Diese Spalte enthält keine Informationen für speicheroptimierte Tabellen.

Bemerkungen

sys.dm_db_incremental_stats_properties gibt unter einer der folgenden Bedingungen eine leere Zeilenmenge zurück:

  • object_id oder stats_id ist NULL.
  • Das angegebene Objekt wird nicht gefunden oder entspricht nicht einer Tabelle mit inkrementellen Statistiken.
  • Die angegebene Statistik-ID entspricht keiner vorhandenen Statistik für die angegebene Objekt-ID.
  • Der aktuelle Benutzer verfügt nicht über die erforderlichen Berechtigungen zum Anzeigen des Statistikobjekts.

Dieses Verhalten ermöglicht die sichere Verwendung von sys.dm_db_incremental_stats_properties , wenn sie auf Zeilen in Ansichten wie sys.objects und sys.statsangewandt wird. Diese Methode kann Eigenschaften für die Statistiken zurückgeben, die zu jeder Partition gehören. Um die Eigenschaften der zusammengeführten Statistiken über alle Partitionen hinweg kombiniert zu sehen, verwenden Sie stattdessen die sys.dm_db_stats_properties.

Das Aktualisierungsdatum für die Statistiken befindet sich gemeinsam mit dem Histogramm und Dichtevektor nicht in den Metadaten, sondern im Statistik-Blobobjekt. Wenn keine Daten zum Generieren von Statistikdaten gelesen werden, wird das Statistik-BLOB nicht erstellt, das Datum ist nicht verfügbar, und die last_updated Spalte ist NULL. Dies ist der Fall bei gefilterten Statistiken oder neuen und leeren Tabellen, für die das Prädikat keine Zeilen zurückgibt.

Erlaubnisse

Erfordert, dass der Benutzer über SELECT-Berechtigungen für Statistikspalten verfügt, Besitzer der Tabelle oder Mitglied der festen Serverrolle sysadmin, der festen Datenbankrolle db_owner oder der festen Datenbankrolle db_ddladmin ist.

Examples

A. Einfaches Beispiel

Das folgende Beispiel liefert die Statistiken für die PartitionTable im Thema "Erstellte Partitionierte Tabellen und Indize" beschriebene Tabelle.

SELECT * FROM sys.dm_db_incremental_stats_properties (object_id('PartitionTable'), 1);

Für weitere Nutzungsvorschläge siehe sys.dm_db_stats_properties.

Siehe auch

DBCC-SHOW_STATISTICS (Transact-SQL)
sys.stats (Transact-SQL)
Objektbezogene dynamische Verwaltungssichten und -funktionen (Transact-SQL)
Dynamische Verwaltungssichten und Funktionen (Transact-SQL)
sys.dm_db_stats_properties
sys.dm_db_stats_histogram (Transact-SQL)