适用于:
Oracle Database - Enterprise Edition - 版本 12.1.0.1 和更高版本本文档所含信息适用于所有平台
用途
本文档旨在对 12C 引入的列 FULL_PLAN_HASH_VALUE 进行解释说明。
适用范围
解释在相关的 gv$ 视图和 v$ 视图中引入 FULL_PLAN_HASH_VALUE 列的目的。
详细信息
从 12C 开始,新列 FULL_PLAN_HASH_VALUE 被加入一系列 gv$ 和 v$ 视图中(参照以下列表)。该列的数值是由 SQL 对应的执行计划中的所有分支节点执行计划计算得出。该值代表当前 SQL 的整体执行计划。通过比较两个 SQL 的 FULL_PLAN_HASH_VALUE 能很容易区分两个执行计划是否完全相同(不需要一行一行的比较两个执行计划)。注意,不能跨版本比较FULL_PLAN_HASH_VALUE,因为该值不向后兼容。FULL_PLAN_HASH_VALUE 的目的在于,为在执行时可能发生执行计划改变的自适应查询,提供一个静态/固定的 HASH 值。
如下列表中的视图包含该列:
GV$SQL
GV$SQLAREA
GV$SQL_PLAN
GV$SQL_PLAN_STATISTICS
GV$SQL_PLAN_STATISTICS_ALL
V$SQL
V$SQLAREA
V$SQL_PLAN
V$SQL_PLAN_STATISTICS
V$SQL_PLAN_STATISTICS_ALL
各个视图的详细信息请参照官方文档,例如V$SQL信息,请参照这里。