欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Mysql--视图

程序员文章站 2022-06-16 13:27:26
一、视图介绍 1.1视图定义:是一个虚拟表,本身不包含数据,行和列的数据来自于*定义视图查询所引用的列,在引用视图的时候动态生成。和普通的表格使用方式一致。 1.2视图的优点: ①简化操作:将复杂的sql关联查询和筛选条件进行视图封装,使用较为方便。 ②安全性:视图可以定制可以查询到的数据(列值) ......

一、视图介绍
1.1视图定义:是一个虚拟表,本身不包含数据,行和列的数据来自于*定义视图查询所引用的列,在引用视图的时候动态生成。和普通的表格使用方式一致。
1.2视图的优点:
①简化操作:将复杂的sql关联查询和筛选条件进行视图封装,使用较为方便。
②安全性:视图可以定制可以查询到的数据(列值),提高了数据的安全性,用于权限控制。
③调高了数据查询效率。
④实现了一定层度上的逻辑独立性。
1.3视图和表格区别
Mysql--视图
二、视图的使用
2.1视图的创建
语法:create view 视图名
as
查询语句;
表结构:
Mysql--视图

需求1:查询员工last_name like “c”的lase_name(员工名), department_name(部门名),job_title(工种名)
Mysql--视图

需求2:查询各个部门的平均工资的级别
Mysql--视图

2.2视图修改:
① create or replace view 视图名
as
查询语句;
② alter view 视图名
as
查询语句;
Mysql--视图
Mysql--视图

2.3查询视图
①desc chen;
②show create view chen02;
2.4删除视图
Drop view 视图名,视图名,(可多个);
三、视图数据更新
3.1可以实现:
数据的插入
数据的修改
数据的删除
会对原始表改变。【相应的CRUT】
Mysql--视图
Mysql--视图
Mysql--视图

3.2不可更新的视图
①包含以下关键字的sql语句:分组函数、distinct、group by、having、union或者union all
②常量视图
③Select中包含子查询
④含有 join 语句
⑤from一个不能更新的视图
⑥where子句的子查询引用了from子句中的表
Mysql--视图