关于dbms_stats.gather_table_stats
这段时间有客户的10gR2数据库经常遭遇执行计划不稳定的现象,应该是直方图信息(Histogram)+绑定变量窥视(Bind Variable Peeking)造成的问题。DROP TABLE t;CREATE TABLE t ASSELECT rownum n1,ROUND(rownum/100) n2,'xxxx' n3FROM dba_objectsWHERE rownum<=10000;对于这三种类型的字段,我们都不应该去收集直方图信息,因为没有意义。那么直方图信息之所以需要存在的根本意义在哪里?一. 我们何时该做直方图究其根本实际上就是一个数据分布的图示,这个图示是为了在生成SQL执行计划的时候给Oracle的CBO更多的信息,换句话说,就是