1.临时视图
1.1
临时试图,不会保存,不会显示在navicat菜单中,关闭数据库后,下次进入需要重新创建。
1.2 相关操作:
-- temp view
create temp view vw_temp_log as select visitor,log_data from sys_log
select * from vw_temp_log
drop view vw_temp_log
-- 临时试图不能连表查询
-- select tem.* from vw__temp_log as tem left join sys_log as log on tem.visitor=log.visitor
2.普通视图
2.1 相关操作
-- normal view
create view vw_log as select visitor,log_data from sys_log
select * from vw_log
-- 普通试图可以连表查询,但是查询速度很慢
select tem.* from vw_log as tem left join sys_log as log on tem.visitor=log.visitor
-- 这样是无法删除普通试图的
-- drop view vw_temp_log
-- delete view vw_temp_log
2.2 其他操作
使用navicat 进行试图的创建和编辑。
右键点击一个试图,可以新增视图,也可以对试图进行编辑和删除。
3.物化视图
区别于普通试图,物化试图相当于创建了一张新表,查询时数据来源于创建试图时的数据,原表中数据变动,不会影响试图中的数据;
3.1 相关操作
-- materialized view
create materialized view vw_material_log as select visitor,log_data from sys_log
select * from vw_material_log
select m.* from vw_material_log as m left join sys_log as log on m.visitor=log.visitor
-- 全量更新试图中的数据;
refresh materialized view vw_material_log with data
-- 增量更新试图中的数据;(增量更新,试图必须创建一个唯一索引)
refresh materialized view concurrently vw_material_log with data