Update statistics (transact-sql)

Ім'я таблиці або індексованого подання, для якого потрібно оновити статистику.

Ім'я індексу, для якого оновлюється статистика, або ім'я оновлюваної статистики. Якщо аргумент index_or_statistics_name не вказано, то оптимізатор запитів оновлює всю статистику для таблиці або індексованого подання. Сюди входить статистика, створена інструкцією CREATE STATISTICS, статистика по окремих стовпців, створена при включеному параметрі AUTO_CREATE_STATISTICS, і статистика, створена для індексів.

Вказує приблизне процентне співвідношення або число рядків в таблиці або індексованих поданні для оптимізатора запитів, які використовуються при оновленні статистики. Аргумент number для параметра PERCENT може мати значення від 0 до 100, а для параметра ROWS аргумент number може мати значення від 0 до загального числа рядків. Фактичне процентне співвідношення або число рядків, що відбираються оптимізатором запитів, може не збігатися з заданим значенням. Наприклад, оптимізатор запитів переглядає всі рядки на сторінці даних.

Команда SAMPLE корисна в особливих випадках, в яких план запиту на основі вибірки за замовчуванням не є оптимальним. У більшості випадків немає необхідності використовувати команду SAMPLE, так як оптимізатор запитів робить вибірку і визначає розмір статистично значущою вибірки за замовчуванням, що потрібно для створення високоякісних планів запиту.

Параметр SAMPLE не можна використовувати разом з параметром FULLSCAN. Якщо не вказана жодна з команд SAMPLE або FULLSCAN, оптимізатор запитів використовує вибрані дані і обчислює розмір вибірки за замовчуванням.

Не рекомендується вказувати значення 0 PERCENT і 0 ROWS. Якщо для PERCENT або ROWS вказано значення 0, об'єкт статистики буде оновлено без статистичних даних.

Оновити кожен об'єкт статистики, використовуючи останнє значення частоти вибірки.

Задає примусове повторне обчислення статистик кінцевого рівня, присвячених секціях в реченні ON PARTITIONS, з подальшим їх об'єднанням для створення глобальних статистик. WITH RESAMPLE обов'язково, тому що статистики секції, побудовані з різною частотою вибірки, не можна об'єднати.

ALL | COLUMNS | INDEX

Оновити всю існуючу статистику, створену по одному або кількох стовпців, або статистику, створену для індексів. Якщо не вказано ні один параметр, інструкція UPDATE STATISTICS оновлює всю статистику для таблиці або індексованого подання.

Відключити параметр автоматичного оновлення статистики AUTO_UPDATE_STATISTICS для зазначеної статистики. Якщо вказаний цей параметр, оптимізатор запитів завершує поточний оновлення статистики і відключає оновлення в майбутньому.

Щоб відновити дію параметра AUTO_UPDATE_STATISTICS, знову виконайте інструкцію UPDATE STATISTICS без параметра NORECOMPUTE або виконайте процедуру sp_autostats.

Використання цього параметра може призвести до створення неоптимальні планів запитів. Рекомендується обмежити використання цього параметра, причому використовувати його слід тільки досвідченим системним адміністраторам.

Додаткові відомості про параметрі AUTO_STATISTICS_UPDATE см. В розділі Параметри ALTER DATABASE SET (Transact-SQL).

При значенні ON статистики повторно створюються як статистики окремо по секціях. При значенні OFF дерево статистик видаляється і SQL Server повторно обчислює статистики. За замовчуванням використовується значення OFF.

Якщо статистики по секціях не підтримуються, повертається помилка. Додаткові статистики не підтримуються для наступних типів статистичних даних:

Статистики, створені з індексами, що не вирівняними по секціях для базової таблиці.

Статистики, створені в доступних для читання базах даних-одержувачів AlwaysOn.

Статистики, створені в базах даних, доступних тільки для читання.

Статистики, створені за фільтрованим індексам.

Статистика, створена за поданнями.

Статистики, створені за внутрішніми таблицями.

Статистики, створені з просторовими індексами або XML-індексами.