使用 FOR TABLE ONLY 关键字

使用 FOR TABLE ONLY 关键字来为 typed 表的层级之内单个表收集数据。当指定的 table 有子表时,如果您没有紧跟在 FOR TABLE 之后包括 ONLY 关键字,则 GBase 8s 为那个表以及为层级中它之下的每个子表创建分发。

例如,假设您的数据库有出现在 图 1 中的 typed 表层级, 展示名为 employee 的超级表有名为 sales_rep 的子表。反过来,sales_rep 表有名为 us_sales_rep 的子表。

图: typed 表层级的示例


开始图形描述 - 在周围的文字中描述此图形 - 结束图形描述
当执行下列语句时,数据库服务器生成关于 sales_repus_sales_rep 表的统计信息:
UPDATE STATISTICS FOR TABLE sales_rep;
相反,下列示例为 sales_rep 中的每一列生成统计数据,但不处理表 employeeus_sales_rep
UPDATE STATISTICS FOR TABLE ONLY (sales_rep);

如果你像在此示例中那样指定 FOR TABLE ONLY,则必须将表的标识符(或 owner.table)括在圆括号之间。

由于前面的示例都未指定更新统计数据的级别,因此在缺省情况下,数据库服务器使用 LOW 模式。