第五章 复杂查询 5-1 视图

一、视图和表
1、什么是视图:从SQL的角度来看,视图就是一张表。只是这张表不保存实际数据,而是保存SELECT语句。

2、视图的优点
(1)视图无需保存数据,因此可以节约存储设备的容量。
注:表中存储的是实际数据,而视图中保存的是从表中取出数据所使用的SELECT语句。
(2)可以将频繁使用的SELECT语句保存成视图,这样就不用每次都重新书写了。
只需要在SELECT语句中进行调试,就可以方便地得到想要的结果了。特别是在进行汇总以及复杂的查询条件导致SELECT语句异常庞大时,使用视图可以大大提高效率。
(3)视图中的数据会随着原表的变化自动更新,因此可以保证数据的最新状态。
注:数据保存在表中时,必须要显式地执行SQL更新语句才能对数据进行更新。

二、创建视图的方法

例子:

1、使用视图的查询
在FROM中使用视图的查询,通常由如下两个步骤:
(1)首先执行定义视图的SELECT语句。
(2)根据得到的结果,在执行在FROM子句中使用视图的SELECT语句。
注:我们应该避免在视图的基础上创建视图,因为对于多数的DBMS来说,多重视图会降低SQL的性能。
 
三、视图的限制
限制一1️⃣定义视图时不能使用ORDER BY子句。
注:视图和表一样,数据行都是没有顺序的。
 
限制二2️⃣对视图进行更新
标准SQL规定:如果定义视图的SELECT语句能够满足某些条件,那么这个视图就可以被更新、这些条件如下:
(1)SELECT子句中未使用DISTINCT
(2)FROM子句中只有一张表
(3)未使用GROUP BY子句
(4)未使用HAVING子句
 
四、删除视图

猜你喜欢

转载自www.cnblogs.com/mumulin99/p/9835657.html