DBCC SHOW_STATISTICS (Transact-SQL)

Изменения: 5 декабря 2005 г.

Отображает текущую статистику распределения для указанного адресата в указанной таблице.

ms174384.note(ru-ru,SQL.90).gifВажно!
Эта процедура изменилась по сравнению с более ранними версиями SQL Server. Дополнительные сведения см. в разделе Изменения в работе функций компонента Database Engine в SQL Server 2005.

Значок ссылки на разделСоглашения о синтаксическом обозначении в Transact-SQL

Синтаксис

   DBCC SHOW_STATISTICS ( table_name | view_name , target ) 
[ WITH [ NO_INFOMSGS ] < option > [ , n ] ]
< option > :: =
    STAT_HEADER | DENSITY_VECTOR | HISTOGRAM

Аргументы

  • table_name | view_name**
    Имя таблицы или индексированного представления, для которого необходимо отобразить статистические данные. Имена таблиц и представлений должны соответствовать правилам для идентификаторов.
  • target
    Имя объекта (имя индекса, имя статистики или имя столбца), для которого отображаются статистические данные. Имена адресатов должны соответствовать правилам для идентификаторов. Если аргумент target является именем существующего индекса или статистики по таблице, будут возвращены статистические данные об этом адресате. Если аргумент target является именем существующего столбца и существует автоматически созданная статистика по этому столбцу, будет возвращены данные об этой автоматически созданной статистике.
  • NO_INFOMSGS
    Подавляет все информационные сообщения с степенями серьезности от 0 до 10.
  • STAT_HEADER | DENSITY_VECTOR | HISTOGRAM [ **,**n ]
    Указание одного или более из этих параметров ограничивает результирующие наборы, возвращаемые инструкцией с указанным параметром. Если параметры не указаны, то возвращаются все статистические данные.

Результирующие наборы

Следующая таблица описывает столбцы, возвращаемые в результирующем наборе, если указан параметр STAT_HEADER.

Имя столбца Описание

Name

Имя статистики.

Updated

Дата и время последнего обновления статистики.

Rows

Количество строк в таблице.

Rows Sampled

Количество строк, выбранных для статистических данных.

Steps

Количество этапов распределения.

Density

Селективность первого префикса столбца индекса за исключением столбца EQ_ROWS, который описан в разделе о результирующем наборе параметра HISTOGRAM.

Average key length

Средняя длина всех столбцов индекса.

String Index

Значение «Yes» указывает, что статистические данные содержат строковый суммарный индекс для поддержки определения размеров результирующего набора для условий LIKE. Применяется только к начальным столбцам следующих типов данных: char, varchar, nchar, nvarchar, varchar(max), nvarchar(max), text и ntext.

Следующая таблица описывает столбцы, возвращаемые в результирующий набор, если указан параметр DENSITY_VECTOR.

Имя столбца Описание

All density

Селективность набора префиксов столбца индекса за исключением столбца EQ_ROWS, который описан в разделе о результирующем наборе параметра HISTOGRAM.

Average length

Средняя длина набора префиксов столбца индекса.

Columns

Имена префиксов столбца индекса, для которого отображаются значения All density и Average length.

Следующая таблица описывает столбцы, возвращаемые в результирующий набор, если указан параметр HISTOGRAM.

Имя столбца Описание

RANGE_HI_KEY

Значение верхней границы шага гистограммы.

RANGE_ROWS

Предполагаемое количество строк таблицы, которые находятся в пределах шага гистограммы, исключая верхнюю границу.

EQ_ROWS

Предполагаемое количество строк таблицы, которые равны значению верхней границы, шага гистограммы.

DISTINCT_RANGE_ROWS

Предполагаемое количество различающихся значений в пределах шага гистограммы, исключая верхнюю границу.

AVG_RANGE_ROWS

Среднее количество повторяющихся значений в пределах шага гистограммы, исключая верхнюю границу (RANGE_ROWS / DISTINCT_RANGE_ROWS для DISTINCT_RANGE_ROWS > 0).

Замечания

Возвращенные результаты показывают селективность индекса (чем ниже возвращенная плотность, тем более селективным является индекс) и позволяют определить, является ли индекс полезным для оптимизатора запросов. Возвращенные результаты основаны на действиях распределения индекса.

Чтобы увидеть последнюю дату обновления статистики, используйте функцию STATS_DATE.

Разрешения

Пользователь должен быть либо владельцем таблицы, либо членом фиксированной серверной роли sysadmin, фиксированной роли базы данных db_owner или фиксированной роли базы данных db_ddladmin.

Примеры

А. Возвращение всех статистических данных

Следующий пример отображает все статистические данные для индекса AK_Product_Name таблицы Person.Address .

USE AdventureWorks;
GO
DBCC SHOW_STATISTICS ("Person.Address", AK_Address_rowguid);
GO

Б. Параметр HISTOGRAM

В следующем примере ограничиваются статистические данные, отображаемые для индекса AK_Product_Name .

USE AdventureWorks;
GO
DBCC SHOW_STATISTICS ("Person.Address", AK_Address_rowguid) WITH HISTOGRAM;
GO

См. также

Справочник

CREATE INDEX (Transact-SQL)
CREATE STATISTICS (Transact-SQL)
DBCC (Transact-SQL)
DROP STATISTICS (Transact-SQL)
Хранимая процедура sp_autostats (Transact-SQL)
sp_createstats (Transact-SQL)
STATS_DATE (Transact-SQL)
UPDATE STATISTICS (Transact-SQL)
USE (Transact-SQL)

Другие ресурсы

Статистика индексов

Справка и поддержка

Получение помощи по SQL Server 2005

Журнал изменений

Версия Журнал

5 декабря 2005 г.

Изменения
  • Исправлено описание столбца Density для результирующего набора, производимого параметром STAT_HEADER.
  • Исправлено описание столбца All density для результирующего набора, производимого параметром DENSITY_VECTOR.