Megosztás a következőn keresztül:


sp_statistics (Transact-SQL)

Vonatkozik a következőkre:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalitikai Platform System (PDW)SQL adatbázis a Microsoft Fabric-ben

Visszaadja az összes indexet és statisztikát egy meghatározott táblázatban vagy indexelt nézetben.

Transact-SQL szintaxis konvenciók

Szemantika

sp_statistics
    [ @table_name = ] N'table_name'
    [ , [ @table_owner = ] N'table_owner' ]
    [ , [ @table_qualifier = ] N'table_qualifier' ]
    [ , [ @index_name = ] N'index_name' ]
    [ , [ @is_unique = ] 'is_unique' ]
    [ , [ @accuracy = ] 'accuracy' ]
[ ; ]

Megjegyzés:

Ezt a szintaxist az Azure Synapse Analytics kiszolgáló nélküli SQL-készlete nem támogatja.

Arguments

[ @table_name = ] N'table_name'

Megadja a katalógusinformáció visszaküldésére használt táblát. @table_namea sysname, alapértelmezett nélkül. A wildcard mintás párosítás nem támogatott.

[ @table_owner = ] N'table_owner'

Az asztal tulajdonosának neve a katalógusinformációt szolgálta vissza. @table_owner a sysname, alapértelmezettként NULL. A wildcard mintás párosítás nem támogatott. Ha owner nincs megadva, akkor az alapul szolgáló adatbázis-kezelő rendszer (DBMS) alapértelmezett táblázat-láthatósági szabályai érvényesek.

Az SQL Serverben, ha a jelenlegi felhasználó rendelkezik egy megadott nevű táblával, akkor annak a táblának az indexei visszatérnek. Ha owner nincs megadva, és a jelenlegi felhasználó nem birtokolja a megadott nametáblát , ez az eljárás olyan táblát keres, amelyhez az adatbázis tulajdonosa tulajdonolja a megadott name táblát. Ha létezik ilyen, akkor a táblázat indexei visszakerülnek.

[ @table_qualifier = ] N'table_qualifier'

A táblázat selejtező neve. @table_qualifiera sysname, alapértelmezésként NULL. Különböző adatbázis-alapú termékek háromrészes elnevezést támogatnak a táblákhoz (<qualifier>.<owner>.<name>). Az SQL Serverben ez a paraméter az adatbázis nevét jelöli. Egyes termékekben ez a tábla adatbázis környezetének szervernevét képviseli.

[ @index_name = ] N'index_name'

Az index neve. @index_name a sysname, alapértelmezettként %. A vadkártya mintázatpárosítás támogatott.

[ @is_unique = ] 'is_unique'

Csak az egyedi indexek (ha Y) kerülnek-e visszaküldésre. @is_uniquechar(1), alapértelmezett üres stringrel.

[ @accuracy = ] 'pontosság'

A statisztikák kardinalitásának és oldalpontosságának szintje. @accuracychar(1), alapértelmezett értéke Q. Határozd E meg, hogy a statisztikák frissülnek, hogy a kardinalitás és az oldalak pontosak legyenek.

  • E (SQL_ENSURE) kéri a sofőrt, hogy feltétel nélkül visszaszerezze a statisztikákat.

  • Q (SQL_QUICK) kéri a drivert, hogy csak akkor szerezze le a kardinalitást és az oldalakat, ha azok könnyen elérhetők a szerveren. Ebben az esetben a meghajtó nem biztosítja, hogy az értékek aktuálisak legyenek. Az Open Group szabványra írt alkalmazások mindig az ODBC 3.x-kompatibilis illesztőprogramoktól kapnak SQL_QUICK viselkedést.

Eredményhalmaz

Oszlop név Adattípus Description
TABLE_QUALIFIER sysname Táblázat kvalifikátor neve. Ez az oszlop lehet NULL.
TABLE_OWNER sysname Az asztaltulajdonos neve. Ez az oszlop mindig értéket ad vissza.
TABLE_NAME sysname Tábla neve. Ez az oszlop mindig értéket ad vissza.
NON_UNIQUE smallint Nem null értékű.

0 = Egyedi
1 = Nem egyedi
INDEX_QUALIFIER sysname Index tulajdonos neve. Néhány adatbázis-alapú termék lehetővé teszi, hogy más felhasználók is létrehozzanak indexeket, nem pedig a tábla tulajdonosa. Az SQL Serverben ez az oszlop mindig ugyanaz, mint TABLE_NAME.
INDEX_NAME sysname Az index neve. Ez az oszlop mindig értéket ad vissza.
TYPE smallint Ez az oszlop mindig egy értéket ad vissza:

0 = Statisztikák egy táblázathoz
1 = Csoportosított
2 = Hashelve
3 = Nem klaszterezett
SEQ_IN_INDEX smallint Az oszlop pozíciója az indexben.
COLUMN_NAME sysname Oszlop neve minden visszaküldött TABLE_NAME oszlophoz. Ez az oszlop mindig értéket ad vissza.
COLLATION char(1) Sorrend az összeállításban. A következő lehet:

A = Emelkedő
D = Leereszkedő
NULL = Nem alkalmazható
CARDINALITY int A táblázat sorainak száma vagy az indexben szereplő egyedi értékek.
PAGES int Az index vagy táblázat tárolására szolgáló oldalak száma.
FILTER_CONDITION varchar(128) Az SQL Server nem ad vissza értéket.

Kódértékek visszaadása

Nincs.

Megjegyzések

Az eredményhalmaz indexei növekvő sorrendben jelennek meg az NON_UNIQUEoszlopok , TYPE, INDEX_NAME, és SEQ_IN_INDEX.

Az indextípus klaszterezett azt az indexet jelenti, amelyben a táblázat adatai az index sorrendjében tárolódnak. Ez az érték megfelel az SQL Server klaszterelt indexeknek.

Az index Hashed típus elfogadja a pontos egyezést vagy tartománykereséseket, de a mintás keresések nem használják az indexet.

A sp_statistics rendszer tárolt eljárása az ODBC-vel egyenértékű.SQLStatistics A visszaadott eredményeket , NON_UNIQUETYPE, INDEX_QUALIFIER, INDEX_NAME, és SEQ_IN_INDEX. További információért lásd az ODBC Hivatkozást.

Permissions

Engedély SELECT szükséges a sémához.

Példa: Azure Synapse Analytics and Analytics Platform System (PDW)

A következő példa a AdventureWorks mintaadatbázisból származó adatokat adja vissza a DimEmployee tábláról.

EXECUTE sp_statistics DimEmployee;