次の方法で共有


統計の削除

適用対象:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)Microsoft Fabric SQL Database

SQL Server Management Studio または Transact-SQL を使用すると、SQL Server のテーブルやビューから統計を削除またはドロップすることができます。

このトピックの内容

はじめに

制限事項と制約事項

  • 統計を削除するときは注意が必要です。 そのようにすると、クエリオプティマイザーが選択した実行プランに影響を与える可能性があります。

  • インデックスの統計を DROP STATISTICS で削除することはできません。 インデックスが存在する限り、統計は維持されます。

セキュリティ

権限

テーブルまたはビューに対する ALTER 権限が必要です。

SQL Server Management Studio を使用する

テーブルまたはビューから統計を削除するには

  1. オブジェクト エクスプローラーで、統計を削除するデータベースをプラス記号をクリックして展開します。

  2. プラス記号をクリックして [テーブル] フォルダーを展開します。

  3. プラス記号をクリックして、統計を削除するテーブルを展開します。

  4. プラス記号をクリックして [統計] フォルダーを展開します。

  5. 削除する統計オブジェクトを右クリックして、 [削除]をクリックします。

  6. [オブジェクトの削除] ダイアログ ボックスで、正しい統計が選択されていることを確認し、 [OK]をクリックします。

Transact-SQL の使用

テーブルまたはビューから統計を削除するには

  1. オブジェクト エクスプローラーで、 データベース エンジンのインスタンスに接続します。

  2. [標準] ツール バーの [新しいクエリ] をクリックします。

  3. 次の例をコピーしてクエリ ウィンドウに貼り付け、 [実行] をクリックします。

    USE AdventureWorks2022;  
    GO  
    -- First, create two statistics named VendorCredit and CustomerTotal  
    -- The first statistic uses a random 50% sample of information provided from the Name and CreditRating columns in the Purchasing.Vendor table.  
    CREATE STATISTICS VendorCredit  
        ON Purchasing.Vendor (Name, CreditRating)  
        WITH SAMPLE 50 PERCENT  
    -- The second statistic uses all of the information from the CustomerID and TotalDue columns in the Sales.SalesOrderHeader table  
    CREATE STATISTICS CustomerTotal  
        ON Sales.SalesOrderHeader (CustomerID, TotalDue)  
        WITH FULLSCAN;  
    GO  
    -- This next statement drops both of the statistics created above. Note that the naming convention is [table_name].[statistics_name].  
    DROP STATISTICS Purchasing.Vendor.VendorCredit, Sales.SalesOrderHeader.CustomerTotal;  
    GO  
    

詳細については、「DROP STATISTICS (Transact-SQL)」を参照してください。