创建语句:
create view v_myemp as select * from emp e where e.sal > 2000;
查询语句:
select * from user_views;
修改,同时将列名称列出来:
create or replace view v_myemp (部门编号,部门名称,位置,部门人数,平均工资,总工资,最高工资,最低工资)
as
select d.deptno,d.dname,d.loc,count(e.empno) count,
nvl(round(avg(e.sal),2),0) avg,nvl(sum(e.sal),0) sum,nvl(max(e.sal),0) max,
nvl(min(e.sal),0) min
from emp e
right join dept d on e.deptno = d.deptno
group by d.deptno,d.dname,d.loc;
视图DML操作:
1,更新简单视图(单表映射数据)
在进行视图增加数据的时候,如果视图只包含了表中的部分数据,那么增加时也只会增加部分数据,没有映射到视图中的列,那么都会使用null填充。
简单视图数据更新的时候,会直接影响到实体表数据。
2,更新复杂视图(多表映射数据)
不适合更新,会存在很多问题。