使用 MEDIUM 模式选项来更新与您可以 LOW 模式执行的相同的统计信息,并还生成关于每一指定的列的数据值的分发的统计信息。
UPDATE STATISTICS MEDIUM 在表上已运行之后,查询优化器通常选择更为高效的执行计划,这是与当对于该表仅获得 LOW 模式列分发统计信息时的同一 SELECT 语句相比。
数据库服务器将分发信息放置在 sysdistrib 系统目录表中,对于使用分布式存储的分片的表,还放置在其他系统目录表中。
如果您使用 MEDIUM 模式选项,则数据库服务器至少扫描表一次,并在给定的表上花费比 LOW 模式选项更长的执行时间。
当您使用 MEDIUM 模式选项时,通过采样数据行的百分率来获取数据分发,使用您指定的统计信任级别,或缺省的信任级别 95%。您还可在 Resolution 子句中指定一个显式的最小采样大小。由于 MEDIUM 采样大小通常远远小于实际的行数,因此此模式比 HIGH 模式执行得更快。
在通过采样获取的分发中,结果可多种多样,因为行的不同样例可有不同的采样错误。如果结果差异很大,则您可使用 Resolution 子句来增加采样大小,或降低 percent,或增加 confidence 级别来获取更多一致的结果。
如果 Resolution 子句未指定每 bin 的采样的行的 percent,则在每一 bin 中样例的缺省的平均百分率是 2.5,其将范围分为大约 40 个间隔。如果您未指定 confidence 级别的值,则缺省的级别是 0.95。此值可粗略地解释为 100 次中抽取 95 次,在 MEDIUM 估计的值与来自 HIGH 分发的精确值之间在统计上没有显著的差异。
然而,不为 LVARCHAR、BYTE 或 TEXT 列计算分发。
您必须有 DBA 权限或是该表的所有者来创建 MEDIUM 模式分发。要获取更多关于 MEDIUM 和 HIGH 模式选项的信息,请参阅 Resolution 子句。