sys.dm_db_incremental_stats_properties (Transact-SQL)
Si applica a: SQL Server
Restituisce le proprietà delle statistiche incrementali per l'oggetto di database specificato (tabella) nel database di SQL Server corrente. L'uso di sys.dm_db_incremental_stats_properties
(che contiene un numero di partizione) è simile a sys.dm_db_stats_properties
usato per le statistiche non incrementali.
Questa funzione è stata introdotta in SQL Server 2014 (12.x) Service Pack 2 e SQL Server 2016 (13.x) Service Pack 1.
Sintassi
sys.dm_db_incremental_stats_properties (object_id, stats_id)
Argomenti
object_id
ID dell'oggetto nel database corrente per il quale sono richieste le proprietà di una delle relative statistiche incrementali. object_id è di tipo int.
stats_id
ID delle statistiche per l'oggetto object_idspecificato. L'ID delle statistiche può essere ottenuto dalla DMV sys.stats . stats_id è di tipo int.
Tabella restituita
Nome colonna | Tipo di dati | Descrizione |
---|---|---|
object_id | int | ID dell'oggetto (tabella) per cui restituire le proprietà dell'oggetto statistiche. |
stats_id | int | ID dell'oggetto statistiche. Il valore è univoco all'interno della tabella. Per altre informazioni, vedere sys.stats (Transact-SQL). |
partition_number | int | Numero di partizione che contiene la parte della tabella. |
last_updated | datetime2 | Data e ora dell'ultimo aggiornamento dell'oggetto statistiche. Per altre informazioni, vedere la sezione Osservazioni più avanti nella pagina. |
rows | bigint | Numero totale di righe della tabella al momento dell'ultimo aggiornamento delle statistiche. Se le statistiche vengono filtrate o corrispondono a un indice filtrato, il numero di righe potrebbe essere inferiore al numero di righe della tabella. |
rows_sampled | bigint | Numero totale di righe campionate per i calcoli statistici. |
steps | int | Numero di intervalli nell'istogramma. Per altre informazioni, vedere DBCC SHOW_STATISTICS (Transact-SQL). |
unfiltered_rows | bigint | Numero totale di righe nella tabella prima dell'applicazione dell'espressione di filtro (per statistiche filtrate). Se le statistiche non vengono filtrate, unfiltered_rows corrisponde al valore restituito nella colonna rows. |
modification_counter | bigint | Numero totale di modifiche per la colonna iniziale delle statistiche, la colonna in cui viene compilato l'istogramma, dall'ultimo aggiornamento delle statistiche. Questa colonna non contiene informazioni per le tabelle ottimizzate per la memoria. |
Osservazioni:
sys.dm_db_incremental_stats_properties
restituisce un set di righe vuoto in base a una delle condizioni seguenti:
object_id
ostats_id
è NULL.- L'oggetto specificato non viene trovato oppure non corrisponde a una tabella con statistiche incrementali.
- L'ID delle statistiche specificato non corrisponde alle statistiche esistenti per l'ID oggetto specificato.
- L'utente corrente non dispone delle autorizzazioni per visualizzare l'oggetto statistiche.
Questo comportamento consente l'utilizzo sicuro di sys.dm_db_incremental_stats_properties
in caso di applicazione incrociata in viste quali sys.objects
e sys.stats
. Questo metodo può restituire le proprietà per le statistiche che corrispondono a ogni partizione. Per visualizzare le proprietà per le statistiche unite combinate in tutte le partizioni, usare sys.dm_db_stats_properties.
La data di aggiornamento delle statistiche viene archiviata nell'oggetto BLOB di statistiche insieme all'istogramma e al vettore di densità, non nei metadati. Quando non vengono letti dati per generare dati statistici, il BLOB delle statistiche non viene creato, la data non è disponibile e la colonna last_updated è NULL. È il caso delle statistiche filtrate per le quali il predicato non restituisce alcuna riga o delle nuove tabelle vuote.
Autorizzazioni
L'utente deve avere autorizzazioni di selezione per le colonne delle statistiche o essere proprietario della tabella o membro del ruolo predefinito del server sysadmin
, del ruolo predefinito del database db_owner
o del ruolo predefinito del database db_ddladmin
.
Esempi
R. Esempio semplice
L'esempio seguente restituisce le statistiche per la tabella PartitionTable
descritta nell'argomento Creare tabelle e indici partizionati.
SELECT * FROM sys.dm_db_incremental_stats_properties (object_id('PartitionTable'), 1);
Per altre informazioni sull'utilizzo, vedere sys.dm_db_stats_properties.
Vedi anche
DBCC SHOW_STATISTICS (Transact-SQL)
sys.stats (Transact-SQL)
Funzioni e viste a gestione dinamica relative agli oggetti (Transact-SQL)
Funzioni a gestione dinamica e DMV (Transact-SQL)
sys.dm_db_stats_properties
sys.dm_db_stats_histogram (Transact-SQL)