Teradata 统计

2018-01-12 14:09 更新

Teradata优化器提出了每个SQL查询的执行策略。 此执行策略基于在SQL查询中使用的表收集的统计信息。 使用COLLECT STATISTICS命令收集表上的统计信息。 优化器需要环境信息和数据人口统计数据来制定最佳执行策略。

环境信息

节点数,AMP和CPU数
内存量

数据人口统计

行数
行大小
表中的值范围
每个值的行数
空数
有三种方法来收集表上的统计信息。
  • 随机AMP采样
  • 全面统计收集
  • 使用SAMPLE选项
  • 收集统计
COLLECT STATISTICS命令用于收集表上的统计信息。

语法

以下是收集表上的统计信息的基本语法。

COLLECT [SUMMARY] STATISTICS   
INDEX (indexname) COLUMN (columnname) 
ON <tablename>;

例子

以下示例收集Employee表的EmployeeNo列的统计信息。

COLLECT STATISTICS COLUMN(EmployeeNo) ON Employee;

当执行上述查询时,它将产生以下输出。

*** Update completed. 2 rows changed. 
*** Total elapsed time was 1 second.

查看统计信息

您可以使用HELP STATISTICS命令查看收集的统计信息。

例子

以下是查看收集的统计信息的语法。

HELP STATISTICS <tablename>; 

例子

以下是查看在Employee表上收集的统计信息的示例。

HELP STATISTICS employee;

当执行上述查询时,它产生以下结果。

  Date       Time      Unique Values           Column Names 
--------   -------- -------------------- ----------------------- 
16/01/01   08:07:04         5                       * 
16/01/01   07:24:16         3                   DepartmentNo 
16/01/01   08:07:04         5                   EmployeeNo
以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号