在ORACLE中的虚拟列中丢失表达式

时间:2014-06-13 11:05:42

标签: sql oracle

尝试创建虚拟列,但oracle说

ORA-00936: MISSING EXPRESSION

CREATE TABLE IPA_BOQ_ABSTRCT_DTL
(
  IPABD_ID      INTEGER,
  IPAEDH_ID     INTEGER,
  BCI_CODE      INTEGER,
  IPABD_PRV_QTY as (select count(*)  from cmn_mst)      
);

2 个答案:

答案 0 :(得分:4)

你不能这样做。引用the documentation

  

虚拟列的限制

     
      
  • 必须在同一个表中定义column_expression中引用的任何列。
  •   

虚拟列必须是同一表中定义的非虚拟列上的标量值。

答案 1 :(得分:3)

查看虚拟列here的文档。有各种限制,包括:

  

必须在同一个表中定义column_expression中引用的任何列。