任何人都可以让我知道它们之间的区别,以及它究竟是什么 会在后端做。
DBMS_STATS.GATHER_TABLE_STATS
和analyze table compute statistics
和
估计统计数据
我用谷歌搜索了它,但直到现在才找到正确答案。
答案 0 :(得分:2)
不推荐使用analyze table
来收集基于费用的优化工具的统计信息。
As documented in the manual只有两件事应该使用analyze
:
要收集优化程序的统计信息,请使用dbms_stats
。
本手册还介绍了dbms_stats
包的功能:
对于大多数统计信息的收集,请使用DBMS_STATS软件包,它允许您并行收集统计信息,收集分区对象的全局统计信息,以及以其他方式微调统计信息收集。
(强调我的)
答案 1 :(得分:0)
另外,使用dbms_stats()时,请使用AUTO样本大小;不要试图指定一个百分比。