1.视图的创建
create view 名字
as
查询语句;
2.视图查看
方法一:
show create view 视图名;
方法二
desc 视图名;
3.视图的修改
方法一:
alter view 名字
as
查询语句;
方法二;
create or replace view 名字
as
查询语句
4.视图的删除
方法一:
drop view 视图名;
5.视图的优缺点
优点
1.逻辑清晰,跟简单的查询,使用户可以更加清晰的看到数据
2.可以实现权限的控制
缺点
1.查询慢
视图查询的两种算法都浪费时间。
2.容易造成资源浪费。
6.视图的使用条件
1.表中的属性很多,需要进行属性的部分显示
2.几张关联的表如果使用查询语句非常麻烦
3.权限的使用
7.视图数据的修改
和表中数据修改相同。
但是如果包含了以下语句就不能更新视图
- 包含分组函数 group by distinct , having , union
如:
select title, id from article group by date;
- join
- 常量视图
- where 后的子查询使用了from中的表
如:
create view test as
select max(salary) from employement where id in
(select id from employment where career = employee);
#但是可以更新为这种可以修改
create view test as
select max(salary) from employment where career = "employee";
- 用到了不可更新的视图