sp_helpstats (Transact-SQL)

适用于:SQL ServerAzure SQL 数据库Azure SQL 托管实例

返回有关指定表中的列和索引的统计信息。

重要

在 SQL Server的未来版本中将删除此功能。 请避免在新的开发工作中使用该功能,并着手修改当前还在使用该功能的应用程序。 若要获取有关统计信息的信息,请查询 sys.statssys.stats_columns 目录视图。

Transact-SQL 语法约定

语法

  
sp_helpstats[ @objname = ] 'object_name'   
     [ , [ @results = ] 'value' ]  

参数

[ @objname = ] 'object_name' 指定要在其中提供统计信息的表。 object_name为 nvarchar(520),不能为 null。 可以指定一个一部分或两部分名称。

[ @results = ] 'value' 指定要提供的信息范围。 有效条目为 ALLSTATSALL 列出所有索引的统计信息,以及对其创建统计信息的列; STATS 仅列出未与索引关联的统计信息。 值为 nvarchar(5),默认值为 STATS。

返回代码值

0(成功)或 1(失败)

结果集

下表对结果集中的列进行了说明。

列名称 说明
statistics_name 统计信息的名称。 返回 sysname ,不能为 null。
statistics_keys 统计信息所基于的键。 返回 nvarchar(2078), 不能为 null。

注解

可以使用 DBCC SHOW_STATISTICS 显示特定索引或统计信息的相关详细统计信息。 有关详细信息,请参阅 DBCC SHOW_STATISTICS(Transact-SQL)sp_helpindex(Transact-SQL)。

权限

要求 公共 角色具有成员身份。

示例

以下示例通过执行 sp_createstats,为 AdventureWorks2022 数据库中的所有用户表的所有合格列创建单列统计信息。 然后,运行 sp_helpstats 以查找在 Customer 表中创建的结果统计信息。

USE AdventureWorks2022;  
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

另请参阅

系统存储过程 (Transact-SQL)
数据库引擎存储过程 (Transact-SQL)