Aracılığıyla paylaş


İstatistik oluşturma

Şunlar için geçerlidir: SQL Server 2022 (16.x) ve sonraki sürümleri Microsoft Fabric'teAzure SQL VeritabanıAzure SQL Yönetilen Örneği SQL veritabanı

SQL Server Management Studio veya Transact-SQL kullanarak SQL Server'da tablonun veya dizinli görünümün bir veya daha fazla sütunu üzerinde sorgu iyileştirme istatistikleri oluşturabilirsiniz. Çoğu sorgu için sorgu iyileştiricisi zaten yüksek kaliteli bir sorgu planı için gerekli istatistikleri oluşturur; birkaç durumda ek istatistikler oluşturmanız gerekir.

Sınırlamalar ve kısıtlamalar

CREATE STATISTICS deyimiyle istatistik oluşturmadan önce, AUTO_CREATE_STATISTICS seçeneğinin veritabanı düzeyinde ayarlandığını doğrulayın. Bu, sorgu iyileştiricisinin sorgu koşulu sütunları için düzenli olarak tek sütunlu istatistikler oluşturmaya devam etmesini sağlar.

İstatistik nesnesi başına en çok 32 sütun listeleyebilirsiniz.

Filtrelenmiş istatistik koşulunda tanımlanan tablo sütununun tanımını bırakamaz, yeniden adlandıramaz veya değiştiremezsiniz.

İzinler

Kullanıcının tablo veya dizine alınan görünüm sahibi veya şu rollerden birinin üyesi olmasını gerektirir: sysadmin sabit sunucu rolü, db_owner sabit veritabanı rolü veya db_ddladmin sabit veritabanı rolü.

SQL Server Management Studio kullanma

  1. Nesne Gezginiiçinde, yeni istatistik oluşturmak istediğiniz veritabanını genişletmek için artı işaretini seçin.

  2. artı işaretini seçerek Tablolar klasörünü genişletin.

  3. Yeni istatistik oluşturmak istediğiniz tabloyu genişletmek için artı işaretini seçin.

  4. İstatistikleri klasörüne sağ tıklayın ve Yeni İstatistikler... seçin.

    Tablo table_nameYeni İstatistikler iletişim kutusunun Genel sayfasında aşağıdaki özellikler gösterilir.

    Mülk Açıklama
    Tablo Adı İstatistikler tarafından açıklanan tablonun adını görüntüler.
    İstatistik Adı İstatistiklerin depolandığı veritabanı nesnesinin adını görüntüler.
    İstatistik Sütunları Bu kılavuz, bu istatistik kümesi tarafından açıklanan sütunları gösterir. Kılavuzdaki tüm değerler salt okunur durumdadır.
    Adı İstatistikler tarafından açıklanan sütunun adını görüntüler. Bu, tek bir sütun veya tek bir tablodaki sütunların birleşimi olabilir.
    Veri Türü İstatistikler tarafından açıklanan sütunların veri türünü gösterir.
    Boyutu Her sütun için veri türünün boyutunu görüntüler.
    kimlik İşaretlendiğinde bir kimlik sütununu gösterir.
    NULL değerlerine izin ver Sütunun NULL değeri kabul edip etmediğini belirtir.
    Ekle Tablodan istatistikler tablosuna daha fazla sütun ekleyin.
    Kaldır Seçili sütunu istatistik kılavuzundan kaldırın.
    Yukarı Taşı Seçili sütunu istatistik kılavuzunda önceki bir konuma taşıyın. Kılavuzdaki konum, istatistiklerin kullanışlılığını önemli ölçüde etkileyebilir.
    Aşağı Taşı Seçili sütunu istatistik kılavuzunda daha sonraki bir konuma taşıyın.
    Bu sütunlar için İstatistikleri en son güncelleştirildi İstatistiklerin kaç yaşında olduğunu gösterir. İstatistikler güncel olduğunda daha değerlidir. Verilerde büyük değişiklikler yaptıktan sonra veya atipik veri ekledikten sonra istatistikleri güncelleştirin. Tutarlı bir veri dağılımına sahip tabloların istatistiklerinin daha az sıklıkta güncelleştirilmiş olması gerekir.
    Bu sütunlar için güncelleştirme istatistikleri İletişim kutusu kapatıldığında istatistikleri güncelleştirmek için işaretleyin.

    Aşağıdaki özellik, Tablo table_nameYeni İstatistikler iletişim kutusundaki Filtre sayfasında gösterilir.

    Mülk Açıklama
    ** Filtre İfadesi Filtrelenmiş istatistiklere eklenecek veri satırlarını tanımlar. Örneğin, Production.ProductSubcategoryID IN ( 1, 2, 3 )
  5. Yeni İstatistikler iletişim kutusunda, Tablotable_name ve Genel sayfasında, Ekle'yiseçin.

    Aşağıdaki özellikler Sütun Seç iletişim kutusunda gösterilir. Bu bilgiler salt okunurdur.

    Mülk Açıklama
    Adı İstatistikler tarafından açıklanan sütunun adını görüntüler. Bu, tek bir sütun veya tek bir tablodaki sütunların birleşimi olabilir.
    Veri Türü İstatistikler tarafından açıklanan sütunların veri türünü gösterir.
    Boyutu Her sütun için veri türünün boyutunu görüntüler.
    kimlik İşaretlendiğinde bir kimlik sütununu gösterir.
    NULL değerlerine izin ver Sütunun NULL değeri kabul edip etmediğini belirtir.
  6. Sütun Seç iletişim kutusunda, istatistik oluşturmak istediğiniz her sütunun onay kutusunu veya onay kutularını seçin ve ardından tamam seçin.

  7. Yeni İstatistikler Tablosutable_name iletişim kutusunda Tamam'ıseçin.

Transact-SQL kullanma

  1. Nesne Gezgini'nde, Veritabanı Motoru'nun bir örneğine bağlanın.

  2. Standart çubukta Yeni Sorguseçin.

  3. Aşağıdaki örneği kopyalayıp sorgu penceresine yapıştırın ve Executeöğesini seçin.

    USE AdventureWorks2022;
    GO
    -- Create new statistic object called ContactMail1
    -- on the BusinessEntityID and EmailPromotion columns in the Person.Person table.
    
    CREATE STATISTICS ContactMail1
        ON Person.Person (BusinessEntityID, EmailPromotion);
    GO
    
  4. Yukarıda oluşturulan istatistik, potansiyel olarak aşağıdaki sorgunun sonuçlarını iyileştirir.

    USE AdventureWorks2022;
    GO
    SELECT LastName, FirstName
    FROM Person.Person
    WHERE EmailPromotion = 2
    ORDER BY LastName, FirstName;
    GO
    

Sonraki adımlar