日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關咨詢
選擇下列產(chǎn)品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關閉右側工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
DB2數(shù)據(jù)庫物化視圖之MQT物化查詢表的使用

此文章主要向大家講述的是DB2數(shù)據(jù)庫物化視圖之MQT物化查詢表的具體使用方案,MQT 的定義主要是基于查詢的結果。MQT 可以顯著提高查詢的性能。本教程主要是介紹 MQT、總結表(summary table)和 staging 表,并通過一些實用的例子展示如何創(chuàng)建和使用物化查詢表。

創(chuàng)新互聯(lián)專注于企業(yè)全網(wǎng)營銷推廣、網(wǎng)站重做改版、崇仁網(wǎng)站定制設計、自適應品牌網(wǎng)站建設、H5建站商城系統(tǒng)網(wǎng)站開發(fā)、集團公司官網(wǎng)建設、成都外貿(mào)網(wǎng)站建設、高端網(wǎng)站制作、響應式網(wǎng)頁設計等建站業(yè)務,價格優(yōu)惠性價比高,為崇仁等各大城市提供網(wǎng)站開發(fā)制作服務。

使用 MQT物化查詢表(Materialized Query Tables, MQT)

MQT 的定義基于查詢的結果。MQT 可以顯著提高查詢的性能。本教程將介紹 MQT、總結表(summary table)和 staging 表,并通過一些實用的例子展示如何創(chuàng)建和使用物化查詢表。

MQT 是基于查詢的結果定義的一個表。MQT 中包含的數(shù)據(jù)來自 MQT 定義所基于的一個或多個表。總結表(也稱自動總結表[AST])對于 IBM DB2 for Linux, UNIX, and Windows 的用戶來說應該感到比較熟悉,它們可以看作是特殊的 MQT。fullselect 是總結表定義的一部分,它包含一個 GROUP BY 子句,該子句總結 fullselect 中所引用表中的數(shù)據(jù)。

您可以將 MQT 看作一種物化的視圖。視圖和 MQT 都是基于一個查詢來定義的。每當視圖被引用時,視圖所基于的查詢便會運行。但是,MQT 實際上會將查詢結果存儲為數(shù)據(jù),您可以使用 MQT 中的這些數(shù)據(jù),而不是使用底層表中的數(shù)據(jù)。

MQT 可以顯著提高查詢的性能,尤其是提高復雜查詢的性能。如果優(yōu)化器確定查詢或查詢的一部分可以用一個 MQT 來解決,那么查詢就可以被重寫以便利用 MQT。MQT 可以在創(chuàng)建表時定義,可以定義為由系統(tǒng)維護,也可以定義為由用戶維護。

這種 MQT 中的數(shù)據(jù)是由系統(tǒng)維護的。當創(chuàng)建這種類型的 MQT 時,可以指定表數(shù)據(jù)是 REFRESH IMMEDIATE 還是 REFRESH DEFERRED。通過 REFRESH 關鍵字可以指定如何維護數(shù)據(jù)。DEFERRED 的意思是,表中的數(shù)據(jù)可以在任何時候通過 REFRESH TABLE 語句來刷新。

系統(tǒng)維護的 MQT,不管是 REFRESH DEFERRED 類型的還是 REFRESH IMMEDIATE 類型的,對它們的插入、更新或刪除操作都是不允許的。但是,對于 REFRESH IMMEDIATE 類型的系統(tǒng)維護的 MQT,可以通過 對底層表的更改(即插入、更新或刪除操作)來更新。

下面的小節(jié)將展示一個創(chuàng)建 REFRESH IMMEDIATE 類型的系統(tǒng)維護的 MQT 的例子。這個表名為 EMP,它基于 SAMPLE 數(shù)據(jù)庫中的底層表 EMPLOYEE 和 DEPARTMENT。

由于 REFRESH IMMEDIATE MQT DB2數(shù)據(jù)庫物化視圖要求來自查詢內(nèi)引用的每個表至少有一個惟一鍵要出現(xiàn)在 select 列表中,所以我們首先在 EMPLOYEE 表的 EMPNO 列上定義一個惟一性約束,另外還要在 DEPARTMENT 表的 DEPTNO 列上定義一個惟一性約束。

DATA INITIALLY DEFERRED 子句的意思是,在執(zhí)行 CREATE TABLE 語句的時候,并不將數(shù)據(jù)插入到表中。MQT 被創(chuàng)建好之后,就會處于檢查暫掛(check pending)狀態(tài),在對它執(zhí)行 SET INTEGRITY 語句之前,不能查詢它。IMMEDIATE CHECKED 子句指定,必須根據(jù)用于定義該 MQT 的查詢對數(shù)據(jù)進行檢查,并刷新數(shù)據(jù)。NOT INCREMENTAL 子句指定對整個表進行完整性檢查。

 
 
 
  1. CONNECT TO SAMPLE  
  2. ...  
  3. ALTER TABLE EMPLOYEE ADD UNIQUE (EMPNO)  
  4. ALTER TABLE DEPARTMENT ADD UNIQUE (DEPTNO)  
  5. CREATE TABLE EMP AS (SELECT E.EMPNO, E.FIRSTNME, E.LASTNAME, E.PHONENO, D.DEPTNO,  
  6. SUBSTR(D.DEPTNAME, 1, 12) AS DEPARTMENT, D.MGRNO FROM EMPLOYEE E, DEPARTMENT D  
  7. WHERE E.WORKDEPT = D.DEPTNO)  
  8. DATA INITIALLY DEFERRED REFRESH IMMEDIATE  
  9. SET INTEGRITY FOR EMP IMMEDIATE CHECKED NOT INCREMENTAL  

 以上的相關內(nèi)容就是對DB2數(shù)據(jù)庫物化視圖之MQT物化查詢表的使用的介紹,望你能有所收獲。

【編輯推薦】

  1. 淺析DB2數(shù)據(jù)庫應用遷移中可能出現(xiàn)的問題
  2. DBA該如何在DB2中找出未使用索引,表和包
  3. 對Oracle SQL到DB2 SQL移植的淺析
  4. OracleDB2 9存儲過程的規(guī)劃與實施的技巧描述
  5. Oracle數(shù)據(jù)庫和DB2取前10條記錄的實際對比

網(wǎng)頁題目:DB2數(shù)據(jù)庫物化視圖之MQT物化查詢表的使用
本文鏈接:http://www.5511xx.com/article/dpjpopi.html