簡體   English   中英

DB2索引設置

[英]DB2 indexing setup

我正在查看一些表源代碼,我不確定索引是如何工作的。 這是我看到的例子。

CREATE INDEX INDEXNAME ON AWARD ( AWARD_ID, CUST_ID );

我不明白參數值是什么意思。 是每個列的索引,還是它們組合在一起成為索引。

它是一個包含兩個字段的索引。 索引通常用於選擇,連接,分組和/或排序。

要實現的關鍵是多列索引從左到右是有用的。

對於選擇,如果你有一個看起來像的where子句,這樣的索引將非常有用

WHERE AWARD_ID = 123 AND CUST_ID = 456

如果也有幫助

WHERE AWARD_ID = 123

但可能沒有(直接)有用

WHERE CUST_ID = 456

由於未引用索引的最左列(AWARD_ID)。

加入以類似的方式工作。

--index useful
FROM TBLA JOIN AWARD USING (AWARD_ID,CUST_ID)
 or
FROM TBLA JOIN AWARD USING (AWARD_ID)
--index NOT useful
FROM TBLA JOIN AWARD USING (CUST_ID)

和訂購和分組一樣。

如果您恰好使用DB2 for IBM i,以下文章是一個很棒的資源:

http://www-304.ibm.com/partnerworld/wps/servlet/ContentHandler/stg_ast_sys_wp_db2_i_indexing_methods_strategies

如果是DB2 LUW,則可能會應用有關位圖索引的部分,但忽略有關EVI索引的信息。 另請參閱DB2 LUW信息中心的規划和性能子部分索引部分http://pic.dhe.ibm.com/infocenter/db2luw/v10r5/topic/com.ibm.db2.luw.admin.perf.doc /com.ibm.db2.luw.admin.perf.doc-gentopic8.html

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM