MySQL之视图

MySQL之视图

  • 什么是视图
  • 创建视图
  • 修改视图
  • 删除视图
  • 查看视图
  • 视图的使用
  • 视图和表的对比

如果你想了解更多关于MySQL的内容,可以查看:MySQL学习目录

什么是视图

视图:MySQL从5.0.1版本开始提供视图功能。一种虚拟存在的表,行和列的数据来自定义视图的查询中使用的表,并且是在使用视图时动态生成的,只保存了sql逻辑,不保存查询结果。
应用场景:
– 多个地方用到同样的查询结果
– 该查询结果使用的sql语句较复杂
视图的好处
• 重用sql语句
• 简化复杂的sql操作,不必知道它的查询细节
• 保护数据,提高安全性

创建视图

语法

create view 视图名
as
查询语句;

MySQL之视图_第1张图片

修改视图

方式一

create or replace view 视图名
as
查询语句;

MySQL之视图_第2张图片
方式二:

alter view 视图名
as
查询语句;

MySQL之视图_第3张图片

删除视图

语法

drop view 视图1,视图2,...;

MySQL之视图_第4张图片
用户可以一次删除一个或者多个视图,前提是必须有该视
图的drop权限。

查看视图

语法

show tables;

MySQL之视图_第5张图片
如果需要查询某个视图的定义,可以使用:

show create view view_name \G

MySQL之视图_第6张图片

视图的使用

视图的增加修改删除和表一样,详见:
MySQL之DML语言

注意:视图一般用于查询的,而不是更新的,所以具备以下特点的视图都不允许更新。
• 包含以下关键字的sql语句:分组函数、distinct、group by、having、union或者union all
• 常量视图
• Select中包含子查询
• join
• from一个不能更新的视图
• where子句的子查询引用了from子句中的表

视图和表的对比

关键字 是否占用物理空间 使用
视图 view 占用较小,只保存sql逻辑 一般用于查询
table 保存实际的数据 增删改查

如果有不当之处或者遇到什么问题,欢迎在文章下面留言~
转载请注明:https://blog.csdn.net/weixin_44662961/article/details/105207289

你可能感兴趣的:(mysql,数据库,sql)