ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

sql视图如何操作?sql视图的创建、更新与删除

2023-01-09 15:07:27  阅读:79  来源: 互联网

标签:sql icode9 视图操作 函数 数据 创建视图 数据库 引擎


基于 SQL 语句结果集的虚拟表。

   

什么是 SQL 中的视图?

  1. 在 SQL 中,视图是基于 SQL 查询的结果集的虚拟表
  2. 视图具有类似于实际表的行和列。视图的列或字段是从数据库的一个或多个实际表中选取的。
  3. 您可以将 SQL 语句和函数添加到视图中,并像数据来自单个表一样显示数据。

如何创建视图?

使用该语句创建一个视图。CREATE VIEW

CREATE VIEW view_name AS
SELECT column1, column2, …
FROM table_name
WHERE condition;

视图始终显示最新数据。每次用户查询视图时,数据库引擎都会重新创建视图。因此,视图始终具有更新的数据。

让我们了解View的示例:

客户表:

 

以下 SQL 查询创建一个视图,该视图将包含来自美国的所有客户:

CREATE VIEW [USA Customers] AS
SELECT CustomerID, CustomerName
FROM Customers
WHERE Country = ‘USA’;

查看:美国客户

— — — — — — — — — — — — — — — — — - -
CustomerID           | CustomerName
— — — — — — — — — — — — — — — — — - -
3                    | Mark
7                    | Alfred
8                    | Joe
— — — — — — — — — — — — — — — — - - -

以下查询从视图中选择美国客户的记录:

SELECT * FROM USA Customers;

此查询的结果集将与上面显示的视图相同。

更新视图:

可以使用语句更新视图。CREATE OR REPLACE VIEW

SQL 或查看语法→CREATEREPLACE

CREATE OR REPLACE VIEW view_name AS
SELECT column1, column2, …
FROM table_name
WHERE condition;

让我们看一个更新视图的示例USA Customers

CREATE VIEW [USA Customers] AS
SELECT CustomerID, CustomerName, City
FROM Customers
WHERE Country = ‘USA’;

更新的视图:USA Customers

--------------------------------------------------------
CustomerID           | CustomerName      |  City
--------------------------------------------------------
3                    | Mark              |  NYC
7                    | Alfred            |  Los Angeles
8                    | Joe               |  Chicago
--------------------------------------------------------

删除视图:

可以使用语句删除视图。DROP VIEW

DROP VIEW view_name;

以下 SQL 将删除视图:USA Customers

DROP VIEW [USA Customers];

这就是本文的全部内容。希望您喜欢这篇文章。

标签:sql,icode9,视图操作,函数,数据,创建视图,数据库,引擎
来源:

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有