6.1 创建与使用视图
视图是数据库中的虚拟表格,其内容由SELECT查询语句定义。尽管视图在逻辑上像表格,但它不直接存储数据,而是保存了查询基表的定义。因此,视图可以看作是存储了基于一个或多个基表(即视图所依赖的表格)的查询过程。当通过视图进行查询时,数据库会实时执行视图定义的查询语句,因此视图展示的数据会反映基表中的最新数据。
视图的用途,是为用户提供了一种灵活的数据查询方式,它有助于简化复杂的查询操作,封装数据访问,以及提供数据的抽象层。在数据结构复杂或需要频繁进行特定查询的场景下,视图可以提高数据操作的效率和便捷性。此外,视图的运用,限制了对基表的直接访问和操作,从而有利于提高数据的安全性。
创建视图的基本语法如下:
CREATE [ OR REPLACE]VIEW <视图名称> AS
SELECT 字段1, 字段2, ..., 字段n
FROM <基表名称>
[WHERE 条件]
其中,CREATE ORREPLACE VIEW语句用于创建新视图或替换现有同名视图。
SELECT 字段1, 字段2, ..., 字段n定义了视图的内容。
它可以包括WHERE、GROUP BY等子句来指定视图的数据来源和结构。
示例6.1 假设我们要频繁查询存货的入库情况,可以创建一个视图来简化查询:
输入命令:
| CREATE VIEW 入库视图 ASSELECT * FROM 本期存货入库表; |
这样视图就创建成功了,接下来我们就可以通过查询入库视图来达到查询存货入库情况的目的,而不需要直接访问本期存货入库表。
示例6.2 查询入库视图
输入命令:
| SELECT * FROM 入库视图; |
输出结果:

这样,每次需要查询入库情况时,就无需重复编写复杂的查询语句,而是直接查询创建好的视图。

