成都网站建设设计

将想法与焦点和您一起共享

带您了解DB2物化视图

DB2物化视图(MQT)是一类特殊的视图,下面就为您详细介绍DB2物化视图,供您参考,希望对您学习DB2数据库能够有所帮助。

可以将MQT看作一种物化的视图。视图和MQT 都是基于一个查询来定义的。每当视图被引用时,视图所基于的查询便会运行。但是,MQT 实际上则是将查询结果保存为数据,可以使用 MQT 中的这些数据,而不是使用底层表中的数据。

物化查询表可以显著提高查询的性能,尤其是提高复杂查询的性能。如果优化器确定查询或查询的一部分可以用一个 MQT 来解决,那么就会重写查询,以便利用MQT。MQT可以在创建表时定义,或者定义为系统维护的MQT,或者定义为用户维护的 MQT。

当创建系统维护s的DB2物化视图时,可以指定表数据是 REFRESH IMMEDIATE 还是 REFRESH DEFERRED。通过 REFRESH 关键字可以指定如何维护数据。DEFERRED 的意思是,表中的数据可以在任何时候通过 REFRESH TABLE 语句来刷新。不管是 REFRESH DEFERRED 还是 REFRESH IMMEDIATE 类型的系统维护的 MQT,对它们的 insert、update 或 delete 操作都是不允许的。但是,对于 REFRESH IMMEDIATE 类型的系统维护的 MQT,可以通过 对底层表的更改(即 insert、update 或 delete 操作)来更新。

 
 
 
  1. create table course_query as 
  2. select courseware_id, other_courseware_name from 
  3. select distinct courseware_id, other_courseware_name 
  4. from metadata 
  5. where other_courseware_name in 
  6. select distinct Other_courseware_name 
  7. from METADATA 
  8. where is_delete like '0' 
  9. )  
  10. )
  11. data initially deferred refresh deferred;
  12. refresh table course_query;

分享文章:带您了解DB2物化视图
URL地址:https://chengdu.cdxwcx.cn/article/coedohp.html