sp_helpstats (Transact-SQL)
返回有关指定表中的列和索引的统计信息。
重要提示 |
---|
下一版本的 Microsoft SQL Server 将删除该功能。请避免在新的开发工作中使用该功能,并着手修改当前还在使用该功能的应用程序。 若要获得有关统计信息的信息,请查询 sys.stats 和 sys.stats_columns 目录视图。 |
适用范围:SQL Server(SQL Server 2008 至当前版本),Windows Azure SQL Database(初始版本至当前版本)。 |
语法
sp_helpstats[ @objname = ] 'object_name'
[ , [ @results = ] 'value' ]
参数
[ @objname=] 'object_name'
指定用来提供统计信息的表。 object_name 的数据类型为 nvarchar(520),且不能为 null。 可以指定一个一部分或两部分名称。[ @results=] 'value'
指定要提供的信息的范围。 有效项是 ALL 和 STATS。 ALL 将列出所有索引的统计信息以及创建了统计信息的列的统计信息;STATS 则只列出与索引不关联的统计信息。 value 的数据类型为 nvarchar(5),默认值为 STATS。
返回代码值
0(成功)或 1(失败)
结果集
下表对结果集中的列进行了说明。
列名 |
说明 |
---|---|
statistics_name |
统计信息的名称。 返回 sysname,并且不能为空。 |
statistics_keys |
统计信息所基于的键。 返回 nvarchar(2078),并且不能为空。 |
注释
可以使用 DBCC SHOW_STATISTICS 显示特定索引或统计信息的相关详细统计信息。 有关详细信息,请参阅 DBCC SHOW_STATISTICS (Transact-SQL) 和 sp_helpindex (Transact-SQL)。
权限
要求具有 public 角色的成员身份。
示例
以下示例通过执行 sp_createstats,为 AdventureWorks2012 数据库中的所有用户表的所有合格列创建单列统计信息。 然后,运行 sp_helpstats 以查找在 Customer 表中创建的结果统计信息。
USE AdventureWorks2012;
GO
EXEC sp_createstats;
GO
EXEC sp_helpstats
@objname = 'Sales.Customer',
@results = 'ALL';
下面是结果集:
statistics_name statistics_keys
---------------------------- ----------------
_WA_Sys_00000003_22AA2996 AccountNumber
AK_Customer_AccountNumber AccountNumber
AK_Customer_rowguid rowguid
CustomerType CustomerType
IX_Customer_TerritoryID TerritoryID
ModifiedDate ModifiedDate
PK_Customer_CustomerID CustomerID