MySQL 5.0.1 开始支持的视图。

视图是一种临时存在的表。可以将复杂查询的结果保存为视图,方便下次调用。视图保存的不是查询结果,而是一组 sql 查询语句。

视图的优点:

  • 重用sql语句
  • 保护原始数据

视图的使用场景:多个地方需要用到相同的查询结果,而相应的查询语句比较复杂,每次都需要重新编写很麻烦,这时候可以将这些sql语句保存为视图,方便下次调用。

语法

  1. create view 视图名
  2. as
  3. 复杂查询

例如:

  1. create view v1
  2. as
  3. select student_name, major_name
  4. from student s
  5. inner join major m on s.major_id = m.major_id
  6. where s.major_id=1;

调用视图:

  1. select * from v1;

视图的修改

方式一:修改视图,若不存在则创建视图

  1. create or replace view 视图名
  2. as
  3. 复杂查询语句

方式二:使用 alter 关键字

  1. alter view 要求的视图的视图名
  2. as
  3. 复杂查询语句

删除视图

语法:

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

查看视图

  1. -- 方式一
  2. desc 视图名;
  3. -- 方式二
  4. show create view 视图名;

视图的更新

在某些情况下,我们可以在视图中新增或者修改数据,这与视图中查询的定义有关。