什么是视图
视图(View)本质上是一条被保存下来的 SELECT 查询语句。
本身不存储真实数据,没有物理磁盘文件,访问视图时会自动执行内部 SQL 并返回查询结果。视图依托原数据表生成,原表数据发生变化,查询视图拿到的数据同步变更。
视图创建成功后,使用者的使用方式和普通物理数据表完全一致,支持使用 SELECT 语句查询视图字段,无需重复编写多表联查、条件过滤、聚合统计等冗长 SQL,大幅简化日常查询工作。
视图尽量拿来用于查询!!!
创建视图
bash
create view 视图名 as select 表达式

视图得存在大大得简化了日常查询工作
视图与原来表得关系
视图就是在原来的数据库里面有创建了一张表

视图得改变会影响原来的表

原来表发生变化也会影响视图的数据

删除视图
bash
drop view 视图名;

| 分类 | 详细规则 |
|---|---|
| 创建规则 | 1. 定义语句禁止:SELECT INTO、临时表、FROM后嵌套子查询、LOAD DATA; 2. 库内视图名不能和数据表重名; 3. 视图列名必须唯一,重复字段需要手动起别名。 |
| DML 增删改 | 1. 可增删改:单张基表来源,不含聚合、GROUP BY、DISTINCT、UNION、多表连接;基表非空无默认字段必须全部在视图中; 2. 不可增删改:多表联查、分组聚合、去重类视图; 3. CHECK OPTION:LOCAL 只校验当前视图 where 条件;CASCADED 连带上层嵌套视图条件一起校验。 |