sp_statistics (Transact-SQL)

更新日期: 2006 年 7 月 17 日

返回针对指定的表或索引视图的所有索引和统计信息的列表。

主题链接图标Transact-SQL 语法约定

语法

 sp_statistics [ @table_name = ] 'table_name'        [ , [ @table_owner = ] 'owner' ]       [ , [ @table_qualifier = ] 'qualifier' ]       [ , [ @index_name = ] 'index_name' ]       [ , [ @is_unique = ] 'is_unique' ]      [ , [ @accuracy = ] 'accuracy' ]

参数

  • [ @table_name=] 'table_name'
    指定用来返回目录信息的表。table_name 的数据类型为 sysname,无默认值。不支持通配符模式匹配。
  • [ @table_owner= ] 'owner'
    用于返回目录信息的表的表所有者的名称。table_owner 的数据类型为 sysname,默认值为 NULL。不支持通配符模式匹配。如果未指定 owner,则遵循基础 DBMS 的默认表可见性规则。

    在 SQL Server 中,如果当前用户拥有一个具有指定名称的表,则返回该表的索引。如果未指定 owner,并且当前用户没有名称为指定 name 的表,则此过程将查找由数据库所有者拥有,并且名称为指定 name 的表。如果存在这样的表,则返回该表的索引。

  • [ @table_qualifier= ] 'qualifier'
    表限定符的名称。qualifier 的数据类型为 sysname,默认值为 NULL。多种 DBMS 产品支持表的三部分命名方式 (qualifier**.owner.**name)。在 SQL Server 中,此参数表示数据库名称。在某些产品中,该列表示表所在数据库环境的服务器名。
  • [ @index_name= ] 'index_name'
    索引名称。index_name 的数据类型为 sysname,默认值为 %。支持通配符模式匹配。
  • [ @is_unique= ] 'is_unique'
    指定是否只返回唯一索引(如果是 Y)。is_unique 的数据类型为 char(1),默认值为 N
  • [ @accuracy= ] 'accuracy'
    统计信息的基数和页准确性的级别。accuracy 的数据类型为 char(1),默认值为 Q。指定 E 可确保统计信息得到更新,以保持基数和页的准确性。

    E (SQL_ENSURE) 要求驱动程序无条件地检索统计信息。

    只有基数和页可从服务器获得时,值 Q (SQL_QUICK) 才要求驱动程序检索基数和页。在这种情况下,驱动程序不能保证是最新值。按照 X/Open 标准编写的应用程序将总是从 ODBC 3.x 兼容驱动程序获得 SQL_QUICK 行为。

返回代码值

结果集

列名 数据类型 说明

TABLE_QUALIFIER

sysname

表限定符名称。该列可以为 NULL。

TABLE_OWNER

sysname

表所有者名称。此列始终返回值。

TABLE_NAME

sysname

表名。此列始终返回值。

NON_UNIQUE

smallint

NOT NULL。

0 = 唯一

1 = 不唯一

INDEX_QUALIFIER

sysname

索引所有者名称。某些 DBMS 产品允许表所有者之外的用户创建索引。在 SQL Server 中,此列始终与 TABLE_NAME 相同。

INDEX_NAME

sysname

索引的名称。此列始终返回值。

TYPE

smallint

此列始终返回值:

0 = 表的统计信息

1 = 聚集

2 = 哈希

3 = 非聚集

SEQ_IN_INDEX

smallint

列在索引中的位置。

COLUMN_NAME

sysname

返回的 TABLE_NAME 中每列的列名。此列始终返回值。

COLLATION

char(1)

在排序规则中使用的顺序。可以是:

A = 升序

D = 降序

NULL = 不适用

CARDINALITY

int

表中的行数或索引中的唯一值个数。

PAGES

int

存储索引或表的页数。

FILTER_CONDITION

varchar(128)

SQL Server 不返回值。

备注

结果集中的索引按 NON_UNIQUETYPEINDEX_NAMESEQ_IN_INDEX 列的升序显示。

聚集索引类型引用一个索引,该索引中的表数据按索引的顺序存储。这与 SQL Server 聚集索引相对应。

哈希索引类型接受完全匹配或范围搜索,但模式匹配搜索不使用该索引。

sp_statistics 与 ODBC 中的 SQLStatistics 等效。返回的结果按 NON_UNIQUETYPEINDEX_QUALIFIERINDEX_NAMESEQ_IN_INDEX 排序。有关详细信息,请参阅 ODBC API 参考

权限

需要对架构的 SELECT 权限。

请参阅

参考

目录存储过程 (Transact-SQL)
系统存储过程 (Transact-SQL)

帮助和信息

获取 SQL Server 2005 帮助

更改历史记录

发布日期 历史记录

2006 年 7 月 17 日

新增内容:
  • 定义了 @accuracy 参数值。