Oracle 23ai (23.7) — 物化表达式列

Oracle 23ai (23.7) — 物化表达式列

💡 原文英文,约300词,阅读约需1分钟。
📝

内容提要

Oracle 11.1引入虚拟列,允许动态计算列值而不占用存储空间。Oracle 23ai版本新增物化表达式列,将计算值物理存储于表中,提高数据检索速度。

🎯

关键要点

  • Oracle 11.1引入虚拟列,允许动态计算列值而不占用存储空间。
  • 虚拟列使用表达式定义,可以包含常量、SQL函数和同一表中的列。
  • NET_SAL列的值在查询时动态计算。
  • Oracle 23ai版本新增物化表达式列,计算值物理存储于表中。
  • 物化表达式列在DML操作(如插入、更新和删除)时计算值。
  • 物化表达式列的主要优点是物理存储,显著提高数据检索速度。

延伸问答

什么是虚拟列?

虚拟列是在Oracle 11.1中引入的,允许动态计算列值而不占用存储空间。

物化表达式列与虚拟列有什么区别?

物化表达式列将计算值物理存储于表中,而虚拟列则动态计算值,不占用存储空间。

物化表达式列的主要优点是什么?

物化表达式列的主要优点是物理存储,显著提高数据检索速度。

如何创建物化表达式列?

可以使用SQL语句创建物化表达式列,例如:CREATE TABLE TBL_EMP_MAT_COL (id NUMBER, PRE_TAX_SAL NUMBER, NET_SAL NUMBER AS (PRE_TAX_SAL * 0.10) MATERIALIZED);

物化表达式列在DML操作中如何工作?

物化表达式列在插入、更新和删除等DML操作时计算值并存储。

虚拟列的值是如何计算的?

虚拟列的值在查询时动态计算,不会在数据库中存储。

➡️

继续阅读