黑猴子的家:mysql 视图简述

1、什么是视图

视图:MySQL从5.0.1版本开始提供视图功能。
一种虚拟存在的表,行和列的数据来自定义视图的查询中使用的表,并且是在使用视图时动态生成的,只保存了sql逻辑,不保存查询结果

2、视图应用场景

多个地方用到同样的查询结果 该查询结果使用的sql语句较复杂

3、示例
CREATE VIEW my_v1
AS
SELECT studentname,majorname 
FROM student s
INNER JOIN major m
ON s.majorid=m.majorid 
WHERE s.majorid = 1;
4、视图的好处

使用简单、安全、数据独立

5、创建或者修改视图

创建视图的语法

create [or replace] view view_name
As select_statement
[with|cascaded|local|check option]

修改视图的语法

alter view view_name
As select_statement
 [with|cascaded|local|check option]
6、视图更新性

视图的可更新性和视图中查询的定义有关系,以下类型的视图是不能更新的
(1)包含以下关键字的sql语句:分组函数、distinct、group by、having、union 或者 union all
(2)常量视图
(3)Select中包含子查询
(4)join
(5)from一个不能更新的视图
(6)where子句的子查询引用了from子句中的表

7、删除视图的语法

用户可以一次删除一个或者多个视图,前提是必须有该视图的drop权限

drop view [if exists] view_name,view_name …[restrict|cascade]
8、查看视图的语法
show tables; 

如果需要查询某个视图的定义,可以使用show create view命令进行查看

show create view view_name \G 
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容