データベースインデックスの練習をアップドリーム
达梦数据库支持二级索引,聚集索引,唯一索引,函数索引,位图索引,分区索引等。
默认的表是索引组织表,利用rowid创建一个默认的索引,所以我们创建的索引,称为二级索引。建索引的目的是加快表的查询,对数据库做DML操作的时候,数据库会自动维护索引。索引是一棵倒置的树,使用索引,就是对这个索引树进行遍历。
建立索引的规则:经常查询的列、连接条件列、谓词经常出现的列(where)、查询是返回表的一小部分数据
ヌルの多数のカラム、カラム上の限られたデータ(例:性別)インデックスを作成するのに適し無し
1は、インデックス情報の表示
指標について話す前に注意事項を:削除、インデックスを作成し、インデックスを再構築し、統計情報を収集し、ピーク時にそれをしません。
ユーザがインデックスケースチェック
所有者、TABLE_NAME、INDEX_NAME、INDEX_TYPE選択所有者=「TEST1」DBA_INDEXESからと、
第行うテスト作成
テーブルTAB10(ID1 INT、ID2作成 INT、ID3 INT、ID4 INT、ID5 INT、ID6 INT、ID7 INT、ID8 INT、NAME1 CHAR(20)、NAME2 VARCHAR(30))。
お問い合わせは、デフォルトで付属し、テーブルを作成するときにクラスタ化インデックスを作成することがわかりました。
所有者、TABLE_NAME、INDEX_NAME、INDEX_TYPE選択 TABLE_NAME 'はTAB10を' = DBA_INDEXESからと、
索引作成するため2、
デフォルトインデックス(デフォルトセカンダリインデックス)を作成するために
交換するか、タブロー(ID1)index_defaultにインデックスを作成します。
クラスタ化インデックスを作成して、クラスタ化インデックスは、新しく作成された置き換えられます来る
TAB10上のクラスタ索引の作成index_clusterまたは交換 (ID2)を、
一意のインデックスを作成します
TAB10上で一意のインデックスindex_unique作成したり、交換してください (ID3)を、
機能的なインデックスが作成
作成またはTAB10上のインデックスindex_functionを置き換える( ID1 + ID2)。
あなたはビットマップ索引を作成すると、ビットマップ索引のヒントや、クラスタ化インデックスが、同じテーブルの上に構築することができない、我々は別のテーブルを作成する必要があります。
作成またはTAB10上のビットマップインデックスindex_bitmapを置き換える (ID4)。
创建分区索引
TAB10(ID5)範囲(ID5)によってグローバルパーティションにインデックスindex_partitionを作成する
(
パーティションg_p1値未満(10)、
仕切g_p2値未満(MAXVALUE)
)。
図3に示すように、インデックスのメンテナンス
インデックス更新データが再構築できる
ALTERインデックスが再構築index_default。
インデックス名は、文の修正
index_partition2にALTER INDEXのindex_partitionリネームを。
同じ文でインデックステーブル構造を削除するには、[削除
ドロップインデックスindex_partition2。
図4は、分析クエリ実行プランは
、クラスタ化インデックスがデフォルトになりますクエリ実行プランによって発見
TAB10 SELECT * FROMを説明します。