📜  Teradata-统计

📅  最后修改于: 2020-11-29 09:03:01             🧑  作者: Mango


Teradata优化器为每个SQL查询提供了一种执行策略。该执行策略基于在SQL查询中使用的表上收集的统计信息。使用COLLECT STATISTICS命令收集表上的统计信息。优化器要求环境信息和数据人口统计数据提供最佳执行策略。

环境信息

  • 节点,AMP和CPU的数量
  • 内存量

资料客层

  • 行数
  • 行数
  • 表中的值范围
  • 每个值的行数
  • 空数

有三种方法可以收集表中的统计信息。

  • 随机AMP采样
  • 完整的统计数据收集
  • 使用样本选项

收集统计数据

COLLECT STATISTICS命令用于收集表的统计信息。

句法

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

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

下面的示例收集有关Employee表的EmployeeNo列的统计信息。

COLLECT STATISTICS COLUMN(EmployeeNo) ON Employee;

执行上述查询后,将产生以下输出。

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

查看统计

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

句法

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

HELP STATISTICS ; 

以下是查看在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