Заметка
Доступ к этой странице требует авторизации. Вы можете попробовать войти в систему или изменить каталог.
Доступ к этой странице требует авторизации. Вы можете попробовать сменить директорию.
Применимо к:SQL Server
База данных
SQL AzureУправляемый экземпляр
SQL AzureБаза данных SQL в Microsoft Fabric
Вызывает инструкцию CREATE STATISTICS для создания статистики с одним столбцом для столбцов, которые еще не являются первым столбцом в объекте статистики. Создание статистики по отдельным столбцам увеличивает число гистограмм, что может улучшить оценку количества элементов, усовершенствовать планы запросов и повысить производительность запросов. Первый столбец объекта статистики имеет гистограмму; Другие столбцы не имеют гистограммы.
sp_createstats полезно для приложений, таких как тестирование, когда время выполнения запроса критически важно, и не может ждать, пока оптимизатор запросов создаст статистику с одним столбцом. В большинстве случаев не требуется использовать sp_createstats; оптимизатор запросов создает статистику с одним столбцом при необходимости, чтобы улучшить планы запросов при AUTO_CREATE_STATISTICS включении параметра.
Дополнительные сведения о статистике см. в статье Статистика. Дополнительные сведения о создании статистики с одним столбцом см. в разделе AUTO_CREATE_STATISTICS "Параметры ALTER DATABASE SET".
Соглашения о синтаксисе Transact-SQL
Синтаксис
sp_createstats
[ [ @indexonly = ] 'indexonly' ]
[ , [ @fullscan = ] 'fullscan' ]
[ , [ @norecompute = ] 'norecompute' ]
[ , [ @incremental = ] 'incremental' ]
[ ; ]
Аргументы
[ @indexonly = ] 'только индексный'
Создает статистику только для столбцов, которые находятся в существующем индексе и не являются первым столбцом в определении индекса.
@indexonly — char(9) с значением по умолчаниюNO.
[ @fullscan = ] 'fullscan'
Использует инструкцию CREATE STATISTICS с параметром FULLSCAN .
@fullscan — char(9) с значением по умолчаниюNO.
[ @norecompute = ] 'norecompute'
Использует инструкцию CREATE STATISTICS с параметром NORECOMPUTE .
@norecompute — char(12) с значением по умолчаниюNO.
[ @incremental = ] 'добавочный'
Использует инструкцию CREATE STATISTICS с параметром INCREMENTAL = ON .
@incremental — char(12) с значением по умолчаниюNO.
Значения кода возврата
0 (успешно) или 1 (сбой).
Результирующий набор
Каждый новый объект статистики имеет то же имя, что и созданный столбец.
Замечания
sp_createstats не создает или не обновляет статистику по столбцам, которые являются первым столбцом в существующем объекте статистики. Это включает первый столбец статистики, созданный для индексов, столбцов с статистикой с одним столбцом, созданной AUTO_CREATE_STATISTICS с помощью параметра, и первый столбец статистики, созданный с CREATE STATISTICS помощью инструкции.
sp_createstats не создает статистику по первым столбцам отключенных индексов, если этот столбец не используется в другом включенном индексе.
sp_createstats не создает статистику для таблиц с отключенным кластеризованным индексом.
Если таблица содержит набор столбцов, sp_createstats не создает статистику по разреженным столбцам. Дополнительные сведения о наборах столбцов и разреженных столбцах см. в разделе "Использование наборов столбцов" и "Использование разреженных столбцов".
Разрешения
Требуется членство в предопределенной роли базы данных db_owner.
Примеры
А. Создание статистики по отдельным столбцам для всех подходящих столбцов
В следующем примере создается статистика по отдельным столбцам для всех подходящих столбцов в базе данных.
EXECUTE sp_createstats;
GO
B. Создание статистики по отдельным столбцам для всех подходящих столбцов индекса
В следующем примере создается статистика с одним столбцом для всех подходящих столбцов, которые уже находятся в индексе и не являются первым столбцом в индексе.
EXECUTE sp_createstats 'indexonly';
GO