感谢燕十八老师
视图 view
在查询中经常把查询结果当初临时表来看,view可以看成一章虚拟表,通过某种运算得到的一个投影
如何创建视图
创建视图的时候需要指定列名和列类型吗
不要,他继承了上面的字段
表与视图数据变化时相互影响问题:
表变视图也变
某种情况下视图可修改,要求:视图的数据和表的数据一一对应 即表的数据对应视图,同时视图对应表
创建视图的语法:
视图只是表的某种查询的投影,所以主要步骤在表查询上,查询的结果取名为视图就可以
create view 视图名
as
select 语句
视图的作用:
1. 简化查询:比如复杂的统计先生成视图再查询视图
2. 更清晰的权限控制:
3. 数据多分表可以用到
为了保证视图是可更新的,其定义中不能包含以下语法结构:
集合操作符
DISTINCT 操作符
聚合函数或分析型函数
GROUP BY,ORDER BY,CONNECT BY,或 START WITH 字句
在 SELECT 之后的列表中使用集合表达式
在 SELECT 之后的列表中使用子查询
连接(join)(但是有例外情况)
对于不可更新的视图,可以利用 INSTEAD OF 触发器对其数据进行修改。