11.MySQL视图特性

目录

视图

视图是一个虚拟表, 其内容有查询定义. 同真实的表一样, 视图包含一系列带有名称的列和行数据. 视图的数据变化会影响到基表, 基表的数据变化也会影响到视图, 这个视图和刚刚讲的ReadView之间没有任何关系.

基本使用

创建视图:
create view 视图名 as select语句;

查询每个人的部门和部门名:



如果未来想高频的拿到部门名和这个人的名字, 怎么做?

如果每次都这样查询, 就太麻烦了, 效率也不高, 解决方案: 我们可以将刚刚查出来的表当做一张视图

好处就是要高频访问一些数据的时候, 就不用在多表查询了, 以视图的方式放到这, 就可以查视图了.
如果修改视图是否会影响到原始表呢?

同理, 改视图也会影响到原始表.

删除视图
drop view 视图名;

视图规则和限制

  • 与表一样, 必须唯一命名(不能出现同名视图或表名)
  • 视图不能添加索引, 也不能有关联的触发器或者默认值
  • 视图可以提高安全性, 必须具有足够的访问权限
  • order by可以用在视图中, 但是如果从该视图检索数据select中也含有order by排序, 那么该视图中的order by将被覆盖.
  • 视图可以和表一起复合查询使用.
相关推荐
noravinsc几秒前
如何清理全部已安装的mysql,之后重新安装mysql 8
数据库·mysql
用户6279947182625 分钟前
南大通用GBase 8a堆栈收集方式汇总
数据库
va学弟9 分钟前
初识SQL
数据库·sql
g***72701 小时前
从MySQL迁移到PostgreSQL的完整指南
数据库·mysql·postgresql
IT教程资源D1 小时前
[N_129]基于springboot,vue学生宿舍管理系统
mysql·vue·前后端分离·springboot宿舍·宿舍管理系统
冷雨夜中漫步1 小时前
Maven BOM(Bill of Materials)使用指南与常见错误
java·数据库·maven
hanyi_qwe1 小时前
Mysql主从复制与读写分离测试
数据库·mysql
梁bk1 小时前
Redis 通信协议(RESP)
数据库·redis·缓存
思成不止于此1 小时前
MySQL 约束详解:保证数据完整性的核心机制
数据库·笔记·学习·mysql
伐尘2 小时前
【MySQL】windows系统下mysql慢日志查询
windows·mysql·adb