Eliminare statistiche

Si applica a:SQL Serverdatabase SQL di AzureIstanza gestita di SQL di AzureAzure Synapse AnalyticsPiattaforma di strumenti analitici (PDW)

In SQL Server è possibile eliminare (fare il drop) le statistiche dalle tabelle e dalle viste usando SQL Server Management Studio o Transact-SQL

Contenuto dell'articolo

Prima di iniziare

Limitazioni e restrizioni

  • Eliminare le statistiche con cautela, in quanto l'operazione può influire sul piano di esecuzione scelto da Query Optimizer.

  • Le statistiche negli indici non possono essere eliminate tramite DROP STATISTICS. Le statistiche vengono mantenute per tutta l'esistenza dell'indice.

Sicurezza

Autorizzazioni

È richiesta l'autorizzazione ALTER per la tabella o la vista.

Utilizzo di SQL Server Management Studio

Per eliminare statistiche da una tabella o una vista

  1. In Esplora oggettifare clic sul segno più per espandere il database in cui si desidera eliminare una statistica.

  2. Fare clic sul segno più per espandere la cartella Tabelle .

  3. Fare clic sul segno più per espandere la tabella in cui si desidera eliminare una statistica.

  4. Fare clic sul segno più per espandere la cartella Statistiche .

  5. Fare clic con il pulsante destro del mouse sull'oggetto statistiche che si vuole eliminare e scegliere Elimina.

  6. Nella finestra di dialogo Elimina oggetto verificare che sia selezionata la statistica corretta e fare clic su OK.

Utilizzo di Transact-SQL

Per eliminare statistiche da una tabella o una vista

  1. In Esplora oggetti connettersi a un'istanza del motore di database.

  2. Sulla barra Standard fare clic su Nuova query.

  3. Copiare e incollare l'esempio seguente nella finestra Query, quindi fare clic su Esegui.

    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  
    

Per altre informazioni, vedere DROP STATISTICS (Transact-SQL).