视图定义
把原始表中的部分数据,映射到一个临时表中,称为视图。视图和原始表是实时映射关系,改变一方,另一方的数据也变,即对视图的操作,会生效给原始表。
视图是从一个或几个基本表或视图导出的表,组成视图的属性列名或者全部省略或者全部指定, 没有第三种选择。如果省略了视图的各个属性列名,那么该视图的列名就隐含在在子查询中。
【索引可以变相的认为,子查询就相当于视图的存在。】
创建视图
create or replace view 视图名称 as 定义语句; ---按照select语句的要求,生成视图。
例:
create or replace view v10 as SELECT ename, sal, deptno FROM emp WHERE deptno = 20;
create or replace view v20 as SELECT ename, sal, deptno FROM emp WHERE deptno = 20 and ename like 'SM%';
create or replace view v30 as SELECT ename, sal, deptno FROM emp WHERE deptno = 20 with check option;
加上with check option,则对视图的操作必须符合创建视图时的,保证数据更改后能被视图查出来。where条件;不加则没有限制。
删除视图
drop view view_name;
with check option
参考:
https://blog.youkuaiyun.com/fredrickhu/article/details/4743204
https://blog.youkuaiyun.com/haiross/article/details/42123627