sys.dm_db_incremental_stats_properties (Transact-SQL)

Se aplica a:SQL Server

Devuelve propiedades de estadísticas incrementales para el objeto de base de datos (tabla) especificado en la base de datos SQL Server actual. El uso de sys.dm_db_incremental_stats_properties (que contiene un número de partición) es similar a sys.dm_db_stats_properties , que se usa para estadísticas no incrementales.

Esta función se introdujo en SQL Server 2014 (12.x) Service Pack 2 y SQL Server 2016 (13.x) Service Pack 1.

Sintaxis

sys.dm_db_incremental_stats_properties (object_id, stats_id)  

Argumentos

object_id
Es el identificador del objeto en la base de datos actual para el que se solicitaron las propiedades de una de sus estadísticas incrementales. object_id es int.

stats_id
Es el identificador de estadísticas para el object_idespecificado. El identificador de estadísticas se puede obtener desde la vista de administración dinámica sys.stats . stats_id es int.

Tabla devuelta

Nombre de la columna Tipo de datos Descripción
object_id int Identificador del objeto (tabla) para el que se devuelven las propiedades del objeto de estadísticas.
stats_id int Identificador del objeto de estadísticas. Es único en la tabla. Para obtener más información, vea sys.stats (Transact-SQL).
partition_number int El número de la partición que contiene la parte de la tabla.
last_updated datetime2 Fecha y hora de la última actualización del objeto de estadísticas. Para más información, vea la sección Comentarios en esta página.
rows bigint El número total de filas que tenía la tabla la última vez que se actualizaron las estadísticas. Si las estadísticas se filtran o corresponden a un índice filtrado, el número de filas puede ser inferior al número de filas de la tabla.
rows_sampled bigint Número total de filas muestreadas para cálculos de estadísticas.
steps int Número de pasos del histograma. Para obtener más información, vea DBCC SHOW_STATISTICS (Transact-SQL).
unfiltered_rows bigint Número total de filas de la tabla antes de aplicar la expresión de filtro (para estadísticas filtradas). Si las estadísticas no están filtradas, unfiltered_rows es igual al valor devuelto en la columna rows.
modification_counter bigint Número total de modificaciones para la columna de estadísticas iniciales (la columna en la que se ha generado el histograma) desde la última vez que se actualizaron las estadísticas.

Esta columna no contiene información sobre tablas optimizadas para memoria.

Comentarios

sys.dm_db_incremental_stats_properties devuelve un conjunto de filas vacío si se da alguna de las condiciones siguientes:

  • object_id o stats_id es NULL.
  • El objeto especificado no se encuentra o no corresponde a una tabla con estadísticas incrementales.
  • El identificador de estadísticas especificado no se corresponde con las estadísticas existentes para el identificador de objeto especificado.
  • El usuario actual no tiene permisos para ver el objeto de estadísticas.

Este comportamiento permite el uso seguro de sys.dm_db_incremental_stats_properties cuando se aplica de manera cruzada a filas en vistas como sys.objects y sys.stats. Este método puede devolver propiedades de las estadísticas que corresponden a cada partición. Para ver las propiedades de las estadísticas combinadas en todas las particiones, use sys.dm_db_stats_properties en su lugar.

La fecha de actualización de estadísticas se almacena en el objeto BLOB de estadísticas junto con el histograma y el vector de densidad, pero no en los metadatos. Cuando no se lee ningún dato para generar datos de estadísticas, no se crea el blob de estadísticas, la fecha no está disponible y la columna last_updated es NULL. Esto sucede en las estadísticas filtradas, en las que el predicado no devuelve ninguna fila, o en las tablas nuevas vacías.

Permisos

Necesita que el usuario tenga permisos de selección en columnas de estadísticas o posea la tabla, o que el usuario sea miembro del rol fijo de servidor sysadmin, del rol fijo de base de datos db_owner o del rol fijo de base de datos db_ddladmin.

Ejemplos

A. Ejemplo sencillo

El ejemplo siguiente devuelve las estadísticas de la tabla PartitionTable que se describe en el tema Crear tablas e índices con particiones.

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

Para obtener sugerencias de uso adicionales, consulte sys.dm_db_stats_properties.

Consulte también

DBCC SHOW_STATISTICS (Transact-SQL)
sys.stats (Transact-SQL)
Funciones y vistas de administración dinámica relacionadas con objetos (Transact-SQL)
Funciones y vistas de administración dinámica (Transact-SQL)
sys.dm_db_stats_properties
sys.dm_db_stats_histogram (Transact-SQL)