DBCC SHOW_STATISTICS (Transact-SQL)

DBCC SHOW_STATISTICS Wyświetla bieżące statystyki optymalizacji kwerendy dla tabela lub indeksowany widok.optymalizator kwerendy używa statystyki oszacowanie kardynalność lub liczbę wierszy w wyniku kwerendy umożliwia optymalizator kwerendy do tworzenia wysokiej jakości planu kwerend.Na przykład optymalizator kwerendy użyć szacunków kardynalność wybrać indeks poszukiwania operator zamiast skanowanie indeksu operator w plan kwerend poprawia wydajność kwerendy poprzez unikanie zasób-skanowanie intensywna indeksu.

optymalizator kwerendy przechowuje statystyki dla tabela lub indeksowany widok w obiekcie statystyki.Dla tabelaobiekt statystyk jest tworzony w indeksie lub liście kolumn tabela .Obiekt statystyki zawiera nagłówek z metadane dotyczących statystyki, histogram z rozkładem wartości w pierwszym klucz kolumna obiektu statystyki i wektorowe gęstości do miara cross -kolumna korelacji.Aparat baz danych Można obliczyć że kardynalność szacunków dowolne dane w obiekcie statystyki.

DBCC SHOW_STATISTICS Wyświetla nagłówek, histogramu i wektorowe gęstości w oparciu o dane przechowywane w obiekcie statystyki.Składnia pozwala określić tabela lub indeksowany widok wraz z miejsce docelowe nazwę indeksu, statystyki nazwę lub nazwę kolumna .W tym temacie opisano sposób wyświetlania statystyk i zrozumienie wyświetlane wyniki.

Aby uzyskać więcej informacji, zobacz Aby poprawić wydajność kwerendy przy użyciu statystyk.

Ikona łącza do tematuJęzyka Transact-SQL składni konwencje

Składnia

DBCC SHOW_STATISTICS ( table_or_indexed_view_name , target ) 
[ WITH [ NO_INFOMSGS ] < option > [ , n ] ]
< option > :: =
    STAT_HEADER | DENSITY_VECTOR | HISTOGRAM | STATS_STREAM

Argumenty

  • table_or_indexed_view_name
    Nazwa tabela lub indeksowany widok , dla którego są wyświetlane informacje statystyczne.

  • target
    Nazwa indeksu, statystyki lub kolumna , dla którego są wyświetlane informacje statystyczne.Jeśli target jest nazwą istniejącego indeksu lub statystyk dotyczących tabela lub indeksowany widok, informacje statystyczne dotyczące tego miejsce docelowe jest zwracany.Jeśli target jest nazwą istniejącej kolumnai automatycznie tworzone statystyki w tej kolumna istnieje, zwracane są informacje o tym statystyki tworzone automatycznie.Automatycznie tworzone statystyki dla kolumna miejsce docelowenie istnieje, zwracany jest komunikat o błędzie 2767.

  • NO_INFOMSGS
    Pomija wszystkie komunikaty informacyjne, których poziomy ważności od 0 do 10.

  • STAT_HEADER | DENSITY_VECTOR | HISTOGRAM | STATS_STREAM **,**n ]
    Określenie jednej lub więcej z niniejszych opcji ogranicza zestawów wyników zwracanych przez instrukcja określona opcja lub opcje.Jeżeli nie określono żadnych opcji, zwracane są wszystkie informacje statystyki.

    Jest STATS_STREAMOkreślone tylko w celach informacyjnych. Nieobsługiwane. Przyszła zgodność nie jest gwarantowana.

Zestawy wyników

W poniższej tabela opisano kolumny w zestaw wyników zwrócone po STAT_HEADER.

Nazwa kolumny

Opis

Name

Nazwa obiektu statystyki.

Updated

Data i czas statystyki ostatniej aktualizacji.STATS_DATEfunkcja jest alternatywny sposób pobrać tych informacji.

Rows

Całkowita liczba wierszy w tabela lub indeksowany widok po ostatniej aktualizacji statystyk.Jeśli statystyki są filtrowane lub odpowiadają filtrowane indeksu, liczba wierszy może być mniejsza niż liczba wierszy w tabela.Aby uzyskać więcej informacji, zobacz Aby poprawić wydajność kwerendy przy użyciu statystyk.

Rows Sampled

Całkowita liczba wierszy pierwotnych w obliczeniach statystyki.Jeśli próbki pobierane wiersze < są wyświetlane histogramu i gęstości wyniki wiersze, szacunków opartych na wiersze włączonych do próby statystycznej.

Steps

Liczba kroków na histogramie.Każdy etap obejmuje zakres następuje wartość kolumna górna granica wartości kolumna .Pierwszy klucz kolumna w statystykach określane są kroki histogramu.Maksymalna liczba kroków wynosi 200.

Density

Obliczane jako 1 / wartooci distinct dla wszystkich wartości w pierwszej klucz kolumna obiektu statystyk, z wyłączeniem wartości granicznych histogramu.Ta wartość gęstości nie jest używany przez optymalizator kwerendy i wyświetlane ze względu na zgodność z wersjami przed SQL Server 2008.

Average Key Length

Średnia liczba bajtów na wartość dla wszystkich kolumn klucz w obiekcie statystyki.

String Index

Ustawienie Tak oznacza obiekt statystyki zawiera ciąg statystyk podsumowania poprawa szacunków kardynalność przypadku predykatów kwerendy używające PODOBNEGO operator; na przykład WHERE ProductName LIKE '%Bike'.Ciąg statystyki podsumowujące są przechowywane oddzielnie od histogramu i są tworzone na pierwszy klucz kolumna obiektu statystyki w przypadku typu char, varchar, nchar, nvarchar, varchar(max), nvarchar(max), text, lub ntext..

Filter Expression

Predykat podzbiór wierszy tabela zawarte w obiekcie statystyki.NULL =-filtrowane dane statystyczne.Uzyskać więcej informacji na temat filtrowane predykaty Filtrowane wskazówek indeksu.Aby uzyskać więcej informacji na temat statystyk filtrowane zobacz Aby poprawić wydajność kwerendy przy użyciu statystyk.

Unfiltered Rows

Całkowita liczba wierszy w tabela przed zastosowaniem filtru wyrażenie.Jeśli Filter Expression ma wartość NULL, Unfiltered Rows jest równa Rows.

W poniższej tabela opisano kolumny w zestaw wyników zwrócone po DENSITY_VECTOR.

Nazwa kolumny

Opis

All Density

Gęstość jest 1 / wartooci distinct.Wyniki są wyświetlane gęstość dla każdego prefiksu kolumny w obiekcie statystyki jeden wiersz na gęstości.Różne wartości jest odrębnego wykazu wartości kolumna , według wierszy i kolumn prefiks.Jeśli obiekt statystyki zawiera kolumny klucz (A, B, C), wyniki raportu gęstość osobnych list wartości w każdym z tych prefiksów kolumna : (A), (A, B) i (A, B, C).Przy użyciu prefiksu (A, B, C), każdy z tych list znajduje się lista wartości distinct: (3, 5, 6), (4, 4, 6), (4, 5, 6), (4, 5, 7).Przy użyciu prefiksu (A, B) tej samej wartości kolumna mają wykazy te różne wartości: (3, 5) (4, 4) i (4, 5)

Average Length

Średnia długość w bajtach do przechowywania listy wartości w kolumna dla prefiksu kolumna .Jeśli wartości na liście (3, 5, 6) każdego wymagają 4 bajty długość wynosi 12 bajtów.

Columns

Nazwy kolumn prefiks, dla którego All density i Average length są wyświetlane.

W poniższej tabela opisano kolumny zwracane w zestaw wyników , gdy określono opcję HISTOGRAMU.

Nazwa kolumny

Opis

RANGE_HI_KEY

Górna granica wartości kolumna dla kroku histogramu.Wartość kolumna jest również nazywany wartością klucz .

RANGE_ROWS

Szacunkowa liczba wierszy, których wartość kolumna mieści się w kroku histogram, z wyłączeniem górnej granicy.

EQ_ROWS

Przybliżona liczba wierszy, którego wartość kolumna jest równa górnej granicy kroku histogramu.

DISTINCT_RANGE_ROWS

Szacunkowa liczba wierszy z wartością różne kolumna w ramach kroku histogram, z wyłączeniem górnej granicy.

AVG_RANGE_ROWS

Średnia liczba wierszy ze zduplikowaną kolumna wartości w ramach kroku histogram, z wyłączeniem górnej granicy (RANGE_ROWS / DISTINCT_RANGE_ROWS DISTINCT_RANGE_ROWS > 0).

Uwagi

Histogram

Histogram mierzy częstotliwość występowania każdej różne wartości w zestaw danych.optymalizator kwerendy oblicza wartości kolumna w pierwszym kluczkolumna obiektu statystyki zaznaczanie wartości w kolumna przez statystycznie próbkowanie wierszy albo wykonywanie pełnego skanowania wszystkich wierszy w tabela lub widoku histogramu. Jeśli histogram jest tworzona z wizytowanych zestaw wierszy, sumy przechowywanej liczby wierszy i liczby wartooci distinct są wartościami szacunkowymi i nie muszą być całe jednostki.

Aby utworzyć histogram, optymalizator kwerendy sortuje wartości w kolumna , oblicza liczbę wartości, które pasują do wartości distinct kolumna i następnie agreguje wartości kolumna , do maksymalnej wysokości 200 histogram sąsiadujących kroków.Każdy krok zawiera zakres następuje wartość kolumna górna granica wartości kolumna .zakres obejmuje wszystkie możliwe kolumna wartości między granicą wartości, z wyłączeniem samych wartości graniczne.Najniższe wartości sortowane kolumna jest wartość górnej granicy dla pierwszego etapu histogramu.

Poniższy diagram przedstawia histogram z sześciu kroków.Obszar po lewej stronie pierwszej wartości górna granica jest pierwszym krokiem.

Histogram przedstawiający 6 kroków

Dla każdego kroku histogram:

  • Linia pogrubiona oznacza wartość górnej granicy (RANGE_HI_KEY) oraz ile razy występuje (EQ_ROWS)

  • Stałe obszar po lewej stronie RANGE_HI_KEY reprezentuje zakres wartości kolumna oraz średnia liczba godzin każdej wartości w kolumna występuje (AVG_RANGE_ROWS).AVG_RANGE_ROWS dla pierwszego etapu histogram jest zawsze 0.

  • Linie kropkowane reprezentują wartości włączonych do próby statystycznej, używanej do oszacowania całkowitej liczby różnych wartości zakres (DISTINCT_RANGE_ROWS) i całkowita liczba wartości w zakres (RANGE_ROWS).optymalizator kwerendy używa RANGE_ROWS i DISTINCT_RANGE_ROWS do wyliczenia AVG_RANGE_ROWS i nie przechowuje wartości włączonych do próby statystycznej.

optymalizator kwerendy definiuje kroki histogram, zgodnie z ich istotnośćstatystyczną.Aby zminimalizować liczbę kroków na histogramie podczas maksymalizacja różnicę między wartościami granicę go używa algorytmu maksymalna różnica.Maksymalna liczba kroków wynosi 200.Liczba kroków histogram może być mniejsza niż liczba wartooci distinct, nawet w wypadku kolumn o mniej niż 200 punktów granicy.Na przykład kolumna o 100 wartooci distinct może mieć histogram z mniej niż 100 punktów granicy.

Wektor gęstość

optymalizator kwerendy używa gęstości zwiększenia kardynalność szacunków dla kwerend zwracających wielu kolumn z tej samej tabela lub indeksowany widok.Wektor gęstość zawiera jeden gęstość dla każdego prefiksu kolumny w obiekcie statystyki.Na przykład, jeśli obiekt statystyki ma kolumn klucz CustomerId, ItemId, Price, gęstość oblicza się na wszystkich prefiksów kolumna .

Prefiks kolumny

Gęstość oblicza się na

(CustomerId)

Wiersze o identycznych wartościCustomerId

(CustomerId, ItemId)

Wiersze dla pasujących wartości dla CustomerId i ItemId

(CustomerId, ItemId, Price)

Wiersze dla pasujących wartości dla CustomerId, ItemId, i Price

Ograniczenia

DBCC SHOW_STATISTICS zapewnia statystykę przestrzennej indeksy.

Uprawnienia

Aby wyświetlić statystyki obiektu, użytkownik musi własnej tabela lub użytkownik musi być element członkowski sysadmin stała rola serwera db_owner stałej rola bazy danychlub db_ddladmin stałej rola bazy danych.

Przykłady

A.Zwracanie wszystkich informacje statystyczne

Poniższy przykład wyświetla wszystkie informacje statystyczne o AK_Product_Name indeks Person.Address tabela.

USE AdventureWorks2008R2;
GO
DBCC SHOW_STATISTICS ("Person.Address", AK_Address_rowguid);
GO

B.Określenie opcji HISTOGRAMU

Poniższy przykład ogranicza informacje statystyczne wyświetlane dla AK_Product_Name indeks, aby dane HISTOGRAMU.

USE AdventureWorks2008R2;
GO
DBCC SHOW_STATISTICS ("Person.Address", AK_Address_rowguid) WITH HISTOGRAM;
GO