Perbarui statistik

Berlaku untuk:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse Analytics AnalyticsPlatform System (PDW)

Anda dapat memperbarui statistik pengoptimalan kueri pada tabel atau tampilan terindeks di SQL Server dengan menggunakan SQL Server Management Studio atau Transact-SQL. Secara default, pengoptimal kueri sudah memperbarui statistik seperlunya untuk meningkatkan rencana kueri; dalam beberapa kasus, Anda dapat meningkatkan performa kueri dengan menggunakan UPDATE STATISTICS atau prosedur sp_updatestats tersimpan untuk memperbarui statistik lebih sering daripada pembaruan default.

Memperbarui statistik akan memastikan bahwa kueri dikompilasi dengan statistik terbaru. Namun, memperbarui statistik menyebabkan kueri dikombinasikan ulang. Sebaiknya jangan memperbarui statistik terlalu sering, karena ada tradeoff performa antara meningkatkan rencana kueri dan waktu yang diperlukan untuk mengkombinasikan ulang kueri. Tradeoff tertentu tergantung pada aplikasi Anda. UPDATE STATISTICS dapat menggunakan tempdb untuk mengurutkan sampel baris untuk membangun statistik.

Izin

Jika menggunakan UPDATE STATISTICS atau membuat perubahan melalui SQL Server Management Studio, memerlukan izin ALTER pada tabel atau tampilan. Jika menggunakan sp_updatestats, memerlukan keanggotaan dalam peran server tetap sysadmin , atau kepemilikan database (dbo).

Menggunakan SQL Server Management Studio

Memperbarui objek statistik

  1. Di Object Explorer, pilih tanda plus untuk memperluas database tempat Anda ingin memperbarui statistik.

  2. Pilih tanda plus untuk memperluas folder Tabel .

  3. Pilih tanda plus untuk memperluas tabel tempat Anda ingin memperbarui statistik.

  4. Pilih tanda plus untuk memperluas folder Statistik .

  5. Klik kanan objek statistik yang ingin Anda perbarui dan pilih Properti.

  6. Dalam kotak dialog Properti Statistik -statistics_name, pilih kotak centang Perbarui statistik untuk kolom ini lalu pilih OK.

Menggunakan Transact-SQL

Memperbarui objek statistik tertentu

  1. Di Object Explorer, sambungkan ke instans Mesin Database.

  2. Pada bilah Standar, pilih Kueri Baru.

  3. Salin dan tempel contoh berikut ke dalam jendela kueri dan pilih Jalankan.

    USE AdventureWorks2022;
    GO
    -- The following example updates the statistics for the AK_SalesOrderDetail_rowguid index of the SalesOrderDetail table.
    UPDATE STATISTICS Sales.SalesOrderDetail AK_SalesOrderDetail_rowguid;
    GO
    

Memperbarui semua statistik dalam tabel

  1. Di Object Explorer, sambungkan ke instans Mesin Database.

  2. Pada bilah Standar, pilih Kueri Baru.

  3. Salin dan tempel contoh berikut ke dalam jendela kueri dan pilih Jalankan.

    USE AdventureWorks2022;
    GO
    -- The following example updates the statistics for all indexes on the SalesOrderDetail table.
    UPDATE STATISTICS Sales.SalesOrderDetail;
    GO
    

Untuk informasi selengkapnya, lihat MEMPERBARUI STATISTIK.

Memperbarui semua statistik dalam database

  1. Di Object Explorer, sambungkan ke instans Mesin Database.

  2. Pada bilah Standar, pilih Kueri Baru.

  3. Salin dan tempel contoh berikut ke dalam jendela kueri dan pilih Jalankan.

    USE AdventureWorks2022;
    GO
    -- The following example updates the statistics for all tables in the database.
    EXEC sp_updatestats;
    

Manajemen indeks dan statistik otomatis

Gunakan solusi seperti Defrag Indeks Adaptif untuk mengelola defragmentasi indeks dan pembaruan statistik secara otomatis untuk satu atau beberapa database. Prosedur ini secara otomatis memilih apakah akan membangun kembali atau mengatur ulang indeks sesuai dengan tingkat fragmentasinya, di antara parameter lainnya, dan memperbarui statistik dengan ambang batas linier.