我有几张表,每天添加100k行。一些统计数据得到更新,但不是全部。似乎有50多个统计数据列出。 1/2是在几天前更新的,但有些是从3个月前开始的。我应该更新这些吗?为什么他们不会更新?SQL表统计信息,如何确定要更新哪些统计信息?
0
A
回答
0
只要所有的自动创建/自动更新都打开,那么SQL优化器不会更新统计信息的原因很可能是因为它认为它无需制定最佳查询计划。
反过来,这可能是因为你的表的标准用法不经常利用他们的查询(即where子句,比较,连接等)
您可以手动更新的统计数据,但如果SQL ISN如果不能及时更新,那么在正常的活动过程中,您可能会注意到没有任何改进。 (只要自动更新打开)
翻转......如果您突然开始在历史上不常使用的列上开始运行查询,那么优化程序可能会改变它的想法并开始保持更近的眼睛在上面。
返回自动更新...如果它关闭,那么你在自己的领土上。另外,如果有人进来并手动创建了一堆统计数据,那么这些统计数据也不会被SQL更新,除非它们在优化查询时变得有用。
This Books Online article is an excellent source of information.
相关问题
- 1. 更新统计信息和表格数
- 2. 截断表和更新统计信息
- 3. Ehcache统计信息
- 4. Solr统计信息
- 5. Sybase ASE 15.0.2 - 动态更新统计信息/索引统计信息
- 6. MySql表和统计信息
- 7. CREATE INDEX后更新统计信息?
- 8. 哪些统计信息在SAS,proc摘要中计算得更快?
- 9. UIBarButtonSystemItem信息和统计
- 10. Jruby统计信息库
- 11. Postgres统计信息 - pg_stat_get_db_xact_commit
- 12. Memcache统计信息cachedump
- 13. 生成mysql统计信息
- 14. iOS5,iOS4,...统计信息?
- 15. 每组Solr统计信息
- 16. Mesos从站统计信息
- 17. Git统计信息API JSON
- 18. 用户的统计信息
- 19. Chrome商店统计信息
- 20. Postgres统计信息收集
- 21. Python:代码统计信息
- 22. Android Market统计信息
- 23. numpy的统计信息
- 24. 月份统计信息
- 25. 信息系统设计
- 26. 伪造Oracle统计信息?
- 27. 收集mysql统计信息
- 28. Google datastore统计信息
- 29. Java版本统计信息
- 30. 收集oracle使用情况统计信息(查看哪些表)
编辑链接到BOL文章。迈向最底层的是最佳实践和讨论触发更新的原因。一些BOL的东西是如此,所以,我认为这篇文章非常好。 – RThomas