SQL 中简单视图和复杂视图的区别
在讨论简单和复杂之前,我们首先应该了解什么是视图。视图是从一个或多个表创建的逻辑虚拟表,主要用于一次获取一个或多个不同表的列。根据视图中涉及的表,我们可以区分 SQL 中的简单视图和复杂视图。
以下是简单视图和复杂视图之间的一些重要区别。
| 序号 | 关键点 | 简单视图 | 复杂视图 |
|---|---|---|---|
| 1 | 定义 | SQL 中的简单视图是由单个表创建的视图。换句话说,在 SQL 中的简单视图情况下,只有一个基本表。 | 另一方面,复杂视图是由多个表创建的,即多个表被投影到复杂视图中。 |
| 2 | 关联 | 在简单视图的情况下,由于只有一个表处于上下文中,因此在这种 SQL 视图中不需要应用任何主要的关联。 | 另一方面,在复杂视图的情况下,多个表处于上下文中,因此需要应用一般的关联,其中包括连接条件、分组依据子句和排序依据子句。 |
| 3 | 组函数 | 在简单视图中,由于只有一个表,因此我们不能使用 MAX()、COUNT() 等组函数。 | 另一方面,在复杂视图的情况下,由于有多个表,我们可以使用各种组函数。 |
| 4 | 允许的操作 | 在简单视图中,可以轻松执行 DML 操作。 | 然而,另一方面,在复杂视图的情况下,并非总是可以执行 DML 操作。 |
| 5 | 更改 | 如上一点所述,由于 DML 操作,可以直接执行 INSERT、DELETE 和 UPDATE。 | 然而,另一方面,在复杂视图的情况下,我们不能应用 INSERT、DELETE 和 UPDATE。 |
| 6 | NULL 列 | 在简单视图中,不能包含来自基本表的 NOT NULL 列。 | 然而,另一方面,在复杂视图的情况下,可以在复杂视图中包含 NOT NULL 列。 |
广告
数据结构
网络
关系数据库管理系统
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP