SQL Server如何创建统计信息

本文涉及的产品
云数据库 RDS SQL Server,基础系列 2核4GB
简介:

前几天在论坛看到有人在问为什么一张表上看不到SQL Server统计信息,这张表是新创建的HEAP表,并且没有索引,从来没有被访问过。 其实回答这个问题就要回到SQL Server是如何创建并且维护统计信息的。

 

SQL Server会在下面三种情况下创建统计信息:

 

1.在索引创建是,SQL Server会自动在索引所在的列上创建统计信息

 

2.当SQL Server想要使用某些裂伤的统计信息,发现没有的时候会自动创建统计信息(前提是要开启自动创建统计信息)

 

3.用户可以使用create statistics手动创建统计信息

 

更多信息可以参考这篇文章:UnderstandingSQL Server Statistics


本文转自 lzf328 51CTO博客,原文链接:

http://blog.51cto.com/lzf328/1051065


相关文章
|
2月前
|
SQL Web App开发 安全
SQL Server 2025年7月更新 - 修复 CVE-2025-49718 Microsoft SQL Server 信息泄露漏洞
SQL Server 2025年7月更新 - 修复 CVE-2025-49718 Microsoft SQL Server 信息泄露漏洞
154 0
SQL Server 2025年7月更新 - 修复 CVE-2025-49718 Microsoft SQL Server 信息泄露漏洞
|
XML SQL 数据格式
XML动态sql查询当前时间之前的信息报错
XML动态sql查询当前时间之前的信息报错
115 2
|
10月前
|
SQL Java
使用java在未知表字段情况下通过sql查询信息
使用java在未知表字段情况下通过sql查询信息
117 8
|
10月前
|
SQL 监控 关系型数据库
SQL语句当前及历史信息查询-performance schema的使用
本文介绍了如何使用MySQL的Performance Schema来获取SQL语句的当前和历史执行信息。Performance Schema默认在MySQL 8.0中启用,可以通过查询相关表来获取详细的SQL执行信息,包括当前执行的SQL、历史执行记录和统计汇总信息,从而快速定位和解决性能瓶颈。
525 1
|
10月前
|
SQL
开启慢SQL设置long_query_time=0.1为啥会统计的sql却存在小于100毫秒的sql
开启慢SQL设置long_query_time=0.1为啥会统计的sql却存在小于100毫秒的sql
155 1
|
12月前
|
SQL Java
使用java在未知表字段情况下通过sql查询信息
使用java在未知表字段情况下通过sql查询信息
96 1
|
12月前
|
关系型数据库 MySQL 网络安全
5-10Can't connect to MySQL server on 'sh-cynosl-grp-fcs50xoa.sql.tencentcdb.com' (110)")
5-10Can't connect to MySQL server on 'sh-cynosl-grp-fcs50xoa.sql.tencentcdb.com' (110)")
|
11月前
|
SQL 存储 关系型数据库
mysql 数据库空间统计sql
mysql 数据库空间统计sql
132 0
|
SQL 流计算
Flink SQL 在快手实践问题之由于meta信息变化导致的state向前兼容问题如何解决
Flink SQL 在快手实践问题之由于meta信息变化导致的state向前兼容问题如何解决
104 1
|
SQL 存储 监控
SQL Server的并行实施如何优化?
【7月更文挑战第23天】SQL Server的并行实施如何优化?
410 13