DB2确定某个表的统计信息的具体收集时间如何操作?


  本文标签:DB2确定某个表

  文章主要向大家讲述的是DB2确定某个表的统计信息的具体收集时间的操作方案,假如你并不知道对于一个表RUNSTATS的最后一次执行的具体操作时间(或者如果它根本就没有对该表执行过)  。那么您可以通过查询SYSCAT.TABLES这个系统视图来获取这一信息  。

  在SYSCAT.TABLES这个系统视图中有一列叫做STATS_TIME,它标识了某个表统计信息发生改变的最后时间,如果该表从未执行过RUNSTATS进行统计信息的搜集,那么该列的值为NULL值,而其他一些字段,如:NPAGES的值将为-1  。

  以下的例子说明了如何确定EMPLOYEE表的统计信息最后发生改变的时间:

  

  1. db2 "connect to sample"  
  2. db2 "select stats_time, har(tabname,20) as tabname from syscat.tables where tabname=EMPLOYEE

  

  

  返回结果类似如下结果:

  

  1. STATS_TIME TABNAME  
  2. 2007-04-23-14.11.42.828000 EMPLOYEE 

  

  

  1 条记录已选择  。

  由此我们可以看到对于EMPLOYEE表统计信息的最后一次改变发生在2007年5月21日的20.11.30.

  如果STAT_TIME列显示NULL值,则该表从未执行RUNSTATS进行统计信息的搜集  。

DB2确定某个表的统计信息的收集时间

  上述的相关内容就是对DB2确定某个表的统计信息的收集时间的描述,希望会给你带来一些帮助在此方面  。