SQL基础知识V2——VIEW视图

简介: SQL数据库开发

视图的定义

视图是可视化的表。

本章讲解如何创建、更新和删除视图。


CREATE VIEW 语句

在 SQL 中,视图是基于 SQL 语句的结果集的可视化表。

视图包含行和列,就像真正的表一样。视图中的字段是一个或多个数据库中真实表中的字段。

您可以添加 SQL 函数,在哪里添加,并将语句连接到视图,或者您可以呈现数据,就像数据来自单个表一样。


CREATE VIEW 语法

CREATE VIEW view_name AS
SELECT column_name(s)
FROM table_name
WHERE condition

注释:视图总是显示最新数据!每当用户查询视图时,数据库引擎就使用视图的 SQL 语句重新构建数据。


CREATE VIEW 实例

我们以表Customers为例

1.jpg

"Customer_GD"(广东客户列表)视图从"Customers"表中列出了所有广东省的客户。这个视图使用下面的 SQL 创建:

CREATE VIEW Customer_GD AS
SELECT *
FROM Customers
WHERE 省份='广东省'

我们可以像这样查询上面这个视图:

SELECT * FROM Customer_GD

查看一下视图中的结果:

2.jpg

下面的我们以"Products"表为示例

3.jpg

我们选取 "Products" 表中所有价格高于平均价格的产品:

CREATE VIEW [Products_Above_Average_Price] AS
SELECT 名称,价格
FROM Products
WHERE 价格>(SELECT AVG(价格) FROM Products)

我们可以像这样查询上面这个视图:

SELECT * FROM [Products_Above_Average_Price]

结果如下:

4.jpg

我们也可以向视图添加条件。现在,我们仅仅需要查看 "大米" 类的价格:

SELECT * FROM [Products_Above_Average_Price]
WHERE 名称='大米'

这样就只显示大米的价格了


5.jpg



更新视图

您可以使用下面的语法来更新视图:

CREATE OR REPLACE VIEW 语法

ALTER VIEW view_name AS
SELECT column_name(s)
FROM table_name
WHERE condition

现在,我们希望向 "Products_Above_Average_Price" 视图添加 "规格" 列。我们将通过下列 SQL 更新视图:

ALTER  VIEW [Products_Above_Average_Price] AS
SELECT 名称,价格,规格
FROM Products
WHERE 价格>(SELECT AVG(价格) FROM Products)

我们重新查询该视图:

SELECT * FROM [Products_Above_Average_Price]

结果如下:


6.jpg



删除视图

可以通过 DROP VIEW 命令来删除视图。

DROP VIEW 语法

DROP VIEW view_name

例如我们要删除刚才新建的视图"Products_Above_Average_Price"

DROP VIEW [Products_Above_Average_Price]

重新查询视图后就会显示该视图无效


7.jpg

证明视图已经不存在了。


批注

视图是数据库中一个比较重要的组成部分,在隔离实体表的前提下还可以让用户查询到需要的数据,可以起到保护底层数据的作用。同时针对不同的人群,视图也可以起到简化用户对数据的理解。


相关文章
|
8月前
|
SQL 数据库
SQL使用视图的优缺点
SQL使用视图的优缺点
87 0
|
8月前
|
SQL 存储 数据库
sql事务、视图和索引
sql事务、视图和索引
|
8月前
|
SQL 算法 数据库
【数据库SQL server】关系数据库标准语言SQL之视图
【数据库SQL server】关系数据库标准语言SQL之视图
199 0
|
8月前
|
SQL 存储 关系型数据库
sql语句,索引,视图,存储过程
sql语句,索引,视图,存储过程
67 0
|
8月前
|
SQL 数据库 数据库管理
【SQL server】玩转SQL server数据库:第三章 关系数据库标准语言SQL(一)模式、表、索引与视图
【SQL server】玩转SQL server数据库:第三章 关系数据库标准语言SQL(一)模式、表、索引与视图
226 11
|
8月前
|
存储 SQL 缓存
4.2.1 SQL语句、索引、视图、存储过程
4.2.1 SQL语句、索引、视图、存储过程
|
3月前
|
SQL 存储 数据库
实验4:SQL视图操作与技巧
在SQL数据库管理中,视图(View)是一种虚拟表,它基于SQL查询的结果集创建,并不存储实际数据,而是存储查询定义
|
3月前
|
SQL 存储 数据库
实验4:SQL视图操作技巧与方法
在数据库管理系统中,视图(View)是一种虚拟表,它基于SQL查询的结果集创建,并不实际存储数据
|
3月前
|
存储 SQL 安全
|
3月前
|
SQL 数据库
SQL使用视图的优缺点
SQL使用视图的优缺点
109 0