在使用Oracle数据库过程中,视图是作为数据库对象存在的,因而,在创建了这样的视图后,可以通过工具或者数据字典来查看视图的相关信息。视图来源于表,所有对视图数据的修改终都会被反映到视图的基表中,这些修改必须服从基表的完整性约束,并同样会触发定义在基表上的触发器。 Oracle的视图分为简单视图和复杂视图两种,简单视图是从单一的表中获取数据,其中不包含函数和数据组等,复杂视图是指在视图定义中包括了聚合函数、分析函数、用户自定义函数、多表关联、子查询等。此类视图在某些特定条件下,优化器无法将视图外的谓词条件推送至视图内的基表上,即使在基表的列上创建索引也无法使用索引。本文将对该类视图提出一