个性化阅读
专注于IT技术分析

SQL中简单视图和复杂视图之间的区别

视图在SQL中作为来自一个或多个表的数据的逻辑子集。视图用于限制数据访问。视图不包含自己的数据, 而包含类似的窗口, 通过该窗口可以查看或更改表中的数据。视图所基于的表称为BASE表。

SQL中有两种视图类型:简单视图和复杂视图。简单的意见只能包含一个基本表。复杂的观点可以在多个基表上构建。特别是, 复杂的视图可以包含:连接条件, group by子句, order by子句。

这些类型的视图之间的主要区别是:

简单检视 复杂视图
仅包含一个基本表或仅由一个表创建。 包含多个基本表或由多个表创建。
我们不能使用MAX(), COUNT()等组函数。 我们可以使用组函数。
不包含数据组。 它可以包含数据组。
DML操作可以通过简单的视图执行。 DML操作不能总是通过复杂的视图执行。
INSERT, DELETE和UPDATE可以在简单的视图上直接进行。 我们不能直接在复杂的视图上应用INSERT, DELETE和UPDATE。
简单视图不包含分组, 不同的伪列(如rownum), 列则不受表达式约束。 它可以包含group by, 不同的伪列(如rownum), 按表达式定义的列。
不包括基表中的NOT NULL列。 简单视图未选择的NOT NULL列可以包含在复杂视图中。

参考–

查看– orafaq


赞(0) 打赏
未经允许不得转载:srcmini » SQL中简单视图和复杂视图之间的区别
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

 

觉得文章有用就打赏一下文章作者

微信扫一扫打赏