Index Dialog

Index ダイアログを使用して、指定したテーブルまたはマテリアライズドビューにインデックスを作成します。

インデックス ダイアログは、次のダイアログタブを使用してインデックスの開発を編成します。 一般 、 定義 、および 列 。 SQL タブには、ダイアログ選択によって生成されたSQLコードが表示されます。

索引ダイアログの一般タブ

[ General ]タブのフィールドを使用して、インデックスを識別します。

  • Name フィールドを使用して、インデックスの説明的な名前を追加します。名前は pgAdmin ツリーコントロールに表示されます。

  • Tablespace の横にあるドロップダウンリストボックスを使用して、インデックスが存在するテーブルスペースを選択します。

  • コメント フィールドにインデックスに関するメモを保存します。

[ 定義 ]タブをクリックして続行します。

索引ダイアログ定義タブ

[ Definition ]タブのフィールドを使用して、インデックスを定義します。

  • AccessMethod の横にあるドロップダウンリストボックスを使用して、インデックスタイプを選択します。

    • btree を選択して、Bツリーインデックスを作成します。Bツリーインデックスは、何らかの順序(デフォルト)にソートできるデータに対する等値クエリと範囲クエリを管理するときのパフォーマンスを向上させる場合があります。

    • hash を選択して、ハッシュインデックスを作成します。ハッシュインデックスは、単純な等値比較を管理する際のパフォーマンスを向上させる場合があります。

    • gist を選択してGiSTインデックスを作成します。GiSTインデックスは、2次元幾何学的データ型と最近傍検索を管理する際のパフォーマンスを向上させる場合があります。

    • gin を選択してGINインデックスを作成します。GINインデックスは、複数のキーで値を管理する場合のパフォーマンスを向上させる場合があります。

    • spgist を選択して、スペースパーティション分割されたGiSTインデックスを作成します。SP-GiSTインデックスは、バランスの取れていないデータ構造を管理するときのパフォーマンスを向上させる場合があります。

    • brin を選択して、BRINインデックスを作成します。BRINインデックスは、最小値と最大値と範囲を管理する際のパフォーマンスを向上させる場合があります。

  • FillFactor フィールドを使用して、インデックスのFILLFACTORを指定します。FILLFACTORは、選択したメソッドが各インデックスページをどの程度埋めようとするかを指定します。

  • Gin保留リストの制限 フィールドを使用して、fastupdateが有効な場合に使用されるGINインデックスの保留リストの最大サイズを指定します。この値はキロバイト単位で指定します。

  • 範囲あたりのページ フィールドを使用して、BRINインデックスのエントリごとに1つのブロック範囲を構成するテーブルブロックの数を指定します。

  • Buffering を選択して、インデックスの構築にバッファリング構築手法を使用するかどうかを指定します。デフォルトは 自動 です

  • Deduplicateitems? の横にあるスイッチを 右の位置 に移動して、Bツリー重複排除技術の使用を制御します。デフォルトは はい です。このオプションは、PostgreSQL13以降でのみ使用できます。

  • 高速更新? の横にあるスイッチを 右の位置 に移動して、高速更新テクニックの使用を制御します。デフォルトは はい です。

  • Autosummarize の横にあるスイッチを 右の位置 に移動して、次のページで挿入が検出されるたびに前のページ範囲の要約実行をキューに入れるかどうかを定義します。デフォルトは いいえ です

  • Unique? の横にあるスイッチを 右の位置 に移動して、インデックスの作成時とデータの追加時にテーブル内の重複値をチェックします。デフォルトは いいえ です。

  • NULLsnotdistinct? の横にあるスイッチを 右の位置 に移動して、null値を区別できないものとして扱います。デフォルトは いいえ です。このオプションは、PostgreSQL15以降でのみ使用できます。

  • Clustered? スイッチを Yes の位置に移動して、テーブルをクラスター化するようにサーバーに指示します。

  • コンカレントビルド? スイッチを Yes の位置に移動して、テーブルでの同時挿入、更新、または削除を妨げるロックを取得せずにインデックスを構築します。

  • Constraint フィールドを使用して、制約式を提供します。制約式は、インデックス内のエントリを制約を満たす行に制限します。

[ 列 ]タブをクリックして続行します。

索引ダイアログの列タブ

Columns タブのフィールドを使用して、インデックスがクエリする列または式を指定します。 Isexpression? スイッチを使用して、式sql入力を有効にします。 Column の横にあるドロップダウンリストボックスを使用して、列を選択します。 列 を選択するか、 式 を入力したら、 追加 アイコン(+)をクリックして、列/式のアクションの詳細を提供します。

  • Col/Exp フィールドには、 Column ドロップダウンリストボックスで行われた選択、または入力された Expression が入力されます。

  • 有効になっている場合、ドロップダウンリストボックスを使用して利用可能な 演算子クラス を選択し、列で実行されるアクションのタイプを指定します。

  • 有効になっている場合、ドロップダウンリストボックスを使用して[ 並べ替え順序 ]を選択します。

    • ASC を選択して、昇順の並べ替え順序を指定します(デフォルト)。

    • DESC を選択して、降順の並べ替えを指定します。

  • 有効になっている場合、ドロップダウンリストボックスを使用して Nulls を選択します。

    • First を選択して、null以外の前にnullを並べ替えるように指定します。

    • Last を選択して、null以外のnullの後にnullの並べ替えを指定します(デフォルト)。

  • Collation フィールドのドロップダウンリストボックスを使用して、インデックスに使用する照合を選択します。

Includecolumns フィールドを使用して、制約の INCLUDE 句の列を指定します。このオプションは、Postgres11以降で使用できます。

SQL タブをクリックして続行します。

Index ダイアログに入力すると、SQLコマンドが生成されます(以下の例を参照)。レビューには SQL タブを使用します。再アクセスするかタブを切り替えて、SQLコマンドを変更します。

例

以下は、 Index ダイアログでのユーザー選択によって生成されるsqlコマンドの例です。

インデックスダイアログSQLタブ

ここに示す例は、 jobhist テーブルの job 列の値にインデックスを付ける index_sal という名前のインデックスを作成する方法を示しています。

  • Info ボタン(i)をクリックして、オンラインヘルプにアクセスします。

  • Save ボタンをクリックして作業を保存します。

  • Close ボタンをクリックして、作業を保存せずに終了します。

  • Reset ボタンをクリックして、構成パラメーターを復元します。