sys.partitions (Transact-SQL)
Gilt für: SQL Server Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Platform System (PDW)
Enthält eine Zeile für jede Partition aller Tabellen und der meisten Indizes in der Datenbank. Besondere Indextypen wie Volltext, räumlich und XML sind in dieser Sicht nicht enthalten. Alle Tabellen und Indizes in SQL Server enthalten mindestens eine Partition, unabhängig davon, ob sie explizit partitioniert sind oder nicht.
Spaltenname | Datentyp | BESCHREIBUNG |
---|---|---|
partition_id | bigint | Gibt die Partitions-ID an. Ist innerhalb einer Datenbank eindeutig. |
object_id | int | Gibt die ID des Objekts an, zu dem diese Partition gehört. Jede Tabelle oder Sicht besteht aus mindestens einer Partition. |
index_id | int | Gibt die ID des Indexes innerhalb des Objekts an, zu dem diese Partition gehört. 0 = Heap 1 = gruppierter Index 2 oder höher = nicht gruppierter Index |
partition_number | int | Eine auf 1 basierende Partitionsnummer im besitzenden Index oder Heap. Für nicht partitionierte Tabellen und Indizes ist der Wert dieser Spalte 1. |
hobt_id | bigint | Gibt die ID des Datenheaps oder der B-Struktur (HoBT) an, die die Zeilen für diese Partition enthält. |
rows | bigint | Gibt die ungefähre Anzahl der Zeilen in dieser Partition an. |
filestream_filegroup_id | smallint | Gilt für: SQL Server 2012 (11.x) und höher. Gibt die ID der auf dieser Partition gespeicherten FILESTREAM-Dateigruppe an. |
data_compression | tinyint | Gibt den Status der Komprimierung für jede Partition an: 0 = NONE 1 = ROW 2 = PAGE 3 = COLUMNSTORE : Gilt für: SQL Server 2012 (11.x) und höher 4 = COLUMNSTORE_ARCHIVE : Gilt für: SQL Server 2014 (12.x) und höher Hinweis: Volltextindizes werden in jeder Edition von SQL Server komprimiert. |
data_compression_desc | nvarchar(60) | Gibt den Status der Komprimierung für jede Partition an. Mögliche Werte für rowstore-Tabellen sind NONE, ROW und PAGE. Mögliche Werte für columnstore-Tabellen sind COLUMNSTORE und COLUMNSTORE_ARCHIVE. |
Berechtigungen
Erfordert die Mitgliedschaft in der public -Rolle. Weitere Informationen finden Sie unter Metadata Visibility Configuration.
Beispiele
Bestimmen des vom Objekt verwendeten Speicherplatzes und Anzeigen verwandter Partitionsinformationen
Die folgende Abfrage gibt das gesamte Objekt in einer Datenbank, den in jedem Objekt belegten Speicherplatz und partitionsbezogene Informationen zu den einzelnen Objekten zurück.
SELECT object_name(object_id) AS ObjectName,
total_pages / 128. AS SpaceUsed_MB,
p.partition_id,
p.object_id,
p.index_id,
p.partition_number,
p.rows,
p.data_compression_desc
FROM sys.partitions AS p
JOIN sys.allocation_units AS au ON p.partition_id = au.container_id
ORDER BY SpaceUsed_MB DESC;
Weitere Informationen
Katalogsichten für Objekte (Transact-SQL)
Katalogsichten (Transact-SQL)
FAQ: Abfragen des SQL Server-Systemkatalogs