sp_updatestats (Transact-SQL)sp_updatestats (Transact-SQL)

適用対象: ○SQL Server ○Azure SQL Database XAzure SQL Data Warehouse XParallel Data WarehouseAPPLIES TO: yesSQL Server yesAzure SQL Database noAzure SQL Data Warehouse noParallel Data Warehouse

実行UPDATE STATISTICSに対する現在のデータベース内のすべてのユーザー定義および内部テーブルです。Runs UPDATE STATISTICS against all user-defined and internal tables in the current database.

詳細についてはUPDATE STATISTICSを参照してくださいUPDATE STATISTICS (TRANSACT-SQL)します。For more information about UPDATE STATISTICS, see UPDATE STATISTICS (Transact-SQL). 統計の詳細については、「統計」を参照してください。For more information about statistics, see Statistics.

トピック リンク アイコン Transact-SQL 構文表記規則Topic link icon Transact-SQL Syntax Conventions

構文Syntax

sp_updatestats [ [ @resample = ] 'resample']  

リターン コードの値Return Code Values

0 (成功) または 1 (失敗)0 (success) or 1 (failure)

引数Arguments

[ @resample = ] 'resample' 指定しますsp_updatestatsの RESAMPLE オプションを使用、 UPDATE STATISTICSステートメント。[ @resample = ] 'resample' Specifies that sp_updatestats will use the RESAMPLE option of the UPDATE STATISTICS statement. 場合 'resample' が指定されていないsp_updatestats既定のサンプリングを使用して統計を更新します。If 'resample' is not specified, sp_updatestats updates statistics by using the default sampling. リサンプルvarchar(8) を既定値は [いいえ]resample is varchar(8) with a default value of NO.

コメントRemarks

sp_updatestats実行UPDATE STATISTICS、指定することによって、ALLデータベース内のすべてのユーザー定義および内部テーブルでのキーワード。sp_updatestats executes UPDATE STATISTICS, by specifying the ALL keyword, on all user-defined and internal tables in the database. sp_updatestats は、その進行状況を示すメッセージが表示されます。sp_updatestats displays messages that indicate its progress. 更新が完了したら、すべてのテーブルの統計情報が更新されたことを報告します。When the update is completed, it reports that statistics have been updated for all tables.

sp_updatestats は、無効化された非クラスター化インデックスの統計を更新し、無効になっているクラスター化インデックスの統計を更新できません。sp_updatestats updates statistics on disabled nonclustered indexes and does not update statistics on disabled clustered indexes.

ディスク ベース テーブルでは、 sp_updatestatsに基づいて統計を更新、 modification_counter内の情報、 sys.dm_db_stats_propertiesカタログ ビュー少なくとも 1 つの行が変更されている統計を更新しています。For disk-based tables, sp_updatestats updates statistics based on the modification_counter information in the sys.dm_db_stats_properties catalog view, updating statistics where at least one row has been modified. 実行するときに常にメモリ最適化テーブルで統計が更新されるsp_updatestatsします。Statistics on memory-optimized tables are always updated when executing sp_updatestats. 実行されませんsp_updatestats以上必要です。Therefore do not execute sp_updatestats more than necessary.

sp_updatestatsストアド プロシージャやその他のコンパイル済みコードの再コンパイルをトリガーできます。sp_updatestats can trigger a recompile of stored procedures or other compiled code. ただし、 sp_updatestats 1 つのクエリ プランが参照されているテーブルやインデックスに対するだけの場合、再コンパイルをされない可能性があります。However, sp_updatestats might not cause a recompile, if only one query plan is possible for the tables referenced and the indexes on them. このような場合は、統計が更新されても再コンパイルの必要はありません。A recompilation would be unnecessary in these cases even if statistics are updated.

実行 90 未満の互換性レベル データベースについてsp_updatestatsは特定の統計に対する最新の NORECOMPUTE 設定は保持されません。For databases with a compatibility level below 90, executing sp_updatestats does not preserve the latest NORECOMPUTE setting for specific statistics. 互換性レベルが 90 以上のデータベースは、sp_updatestats は特定の統計に対する最新の NORECOMPUTE オプションを保持します。For databases with a compatibility level of 90 or higher, sp_updatestats does preserve the latest NORECOMPUTE option for specific statistics. 統計の更新の無効化および再有効化について詳しくは、「統計」をご覧ください。For more information about disabling and re-enabling statistics updates, see Statistics.

アクセス許可Permissions

メンバーシップが必要です、 sysadmin固定サーバー ロール、またはデータベースの所有権 (dbo)。Requires membership in the sysadmin fixed server role, or ownership of the database (dbo).

使用例Examples

内のテーブルの統計情報を更新する例を次のAdventureWorks2012AdventureWorks2012データベースです。The following example updates the statistics for tables in the AdventureWorks2012AdventureWorks2012 database.

USE AdventureWorks2012;  
GO  
EXEC sp_updatestats;   

インデックスと統計の自動管理Automatic index and statistics management

Adaptive Index Defrag のようなソリューションを活用し、1 つまたは複数のデータベースに対するインデックスの最適化と統計更新を自動管理します。Leverage solutions such as Adaptive Index Defrag to automatically manage index defragmentation and statistics updates for one or more databases. このプロシージャでは、断片化レベルやその他のパラメーターに基づいてインデックスを再構築または再構成するか、線形しきい値で統計を更新するかが自動的に選択されます。This procedure automatically chooses whether to rebuild or reorganize an index according to its fragmentation level, amongst other parameters, and update statistics with a linear threshold.

関連項目See Also

ALTER DATABASE SET オプション (Transact-SQL) ALTER DATABASE SET Options (Transact-SQL)
CREATE STATISTICS (Transact-SQL) CREATE STATISTICS (Transact-SQL)
DBCC SHOW_STATISTICS (Transact-SQL) DBCC SHOW_STATISTICS (Transact-SQL)
DROP STATISTICS (Transact-SQL) DROP STATISTICS (Transact-SQL)
sp_autostats (Transact-SQL) sp_autostats (Transact-SQL)
sp_createstats (Transact-SQL) sp_createstats (Transact-SQL)
UPDATE STATISTICS (Transact-SQL) UPDATE STATISTICS (Transact-SQL)
システム ストアド プロシージャSystem Stored Procedures