视图:是一种虚拟表,可以喝普通表一样使用,它是通过查询已存在的表中的数据动态生成的表,只保存查询的逻辑,不保存查询的结果。
视图的好处:
--重用SQL
--简化复杂SQL操作,不必知道它的实现细节
--保护数据,提高安全性
应用场景:
--多个地方用到同样的查询结果
--该查询结果使用的SQL语句比较复杂
创建视图语法:create view 视图名 as 查询语句;
修改视图语法:
--方式一:create or replace view 视图名 as 查询语句;
--方式二:alter view 视图名 as查询语句;
删除视图语法:drop view 视图名,视图名,...;
查看视图语法:
--方式一:DESC 视图名; (推荐)
--方式二:SHOW CREATE VIEW 视图名;
视图的更新(增删改统称):视图支持增伤该更新(不推荐),以下情况的视图不允许更新
--包含以下关键字的sql语句:分组函数、distinct、group by、having、union或者union all
--常量视图
--Select中包含子查询
--SQL92语法中的连接查询
--from一个不能更新的视图
视图和表的对比:
创建语法的关键字是否实际占用物理空间使用视图create view只是保存了sql逻辑增删改查,只是一般不能增删改表create table保存了数据增删改查