部分インデックスとは? わかりやすく解説

Weblio 辞書 > 辞書・百科事典 > ウィキペディア小見出し辞書 > 部分インデックスの意味・解説 

部分インデックス

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/06/11 16:49 UTC 版)

ナビゲーションに移動 検索に移動

部分インデックス(ぶぶんインデックス、: partial index)は関係データベース管理システムで用いられるインデックスの中で、特定の条件に適合するだけを含むものを指す。

インデックスの対象となるテーブルに多くの行が含まれていても、インデックスに含むキーを絞り込むことで、インデックスのサイズを小さく抑えられる利点がある。

処理状況をフラグ列として持つテーブルを例に挙げる。フラグには 'A' (アクティブ), 'P' (処理待ち), 'W' (処理中), 'F' (完了) があるとする。インデックスを使った検索が必要なのは 'A', 'P', 'W' のみである場合、以下のような部分インデックスを定義することができる。

  CREATE INDEX partial_flag ON txn_table (flag) WHERE flag in ('A', 'P', 'W');

このインデックスは フラグが 'F' の行を含まない。行の大半の処理が完了していると考えられるならば、フラグ 'F' の行を除外することでインデックスが含む行数を少なく抑えながら、検索できる必要のある行に対しては依然としてインデックスを使うことができる。

同様に、部分インデックスは、特定の列が NULL でない行だけを含むように定義することもできる。大半の行のその列が NULL であるならば大きな利益が見込める。

   CREATE INDEX partial_object_update ON object_table (updated_on) WHERE updated_on IS NOT NULL;

このインデックスを使って以下のクエリを実行すると、更新日を持つ (updated_on IS NOT NULL) 行を効率良く取得できる。

   SELECT * FROM object_table WHERE updated_on IS NOT NULL ORDER BY updated_on;

部分インデックスの条件は、キーと異なる列でも良い。以下のようなインデックスも定義できる。

   CREATE INDEX partial_salary ON employee(age) WHERE salary > 2100;

サポート

  • Microsoft SQL Server はバージョン 2008 以降でサポートしており、「フィルタ選択されたインデックス」と呼んでいる。[1]
  • PostgreSQL はバージョン 7.0 (2000-05-05) 以降でサポートしている。[2]
  • MySQL 5.4 では部分インデックスをサポートしていない。[3]

脚注

  1. ^ フィルタ選択されたインデックスのデザイン ガイドライン”. SQL Server オンライン ブック. Microsoft. 2009年8月29日閲覧。
  2. ^ リリースノート 7.0”. PostgreSQL 8.4.0文書. PostgreSQL. 2009年8月29日閲覧。 “Allow creation of functional indexes to use default types”
  3. ^ Razzoli, Federico (2008年10月5日). “Bug #4990 Functional Indexes”. bugs.mysql.com. 2009年7月14日閲覧。

外部リンク


部分インデックス

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/11/12 07:37 UTC 版)

索引 (データベース)」の記事における「部分インデックス」の解説

部分インデックス (条件付きインデックス、英: partial index) とは、与えられ条件で行をフィルタし、条件を満たす行のみをインデックス対象とする。

※この「部分インデックス」の解説は、「索引 (データベース)」の解説の一部です。
「部分インデックス」を含む「索引 (データベース)」の記事については、「索引 (データベース)」の概要を参照ください。

ウィキペディア小見出し辞書の「部分インデックス」の項目はプログラムで機械的に意味や本文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。 お問い合わせ


英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「部分インデックス」の関連用語

部分インデックスのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



部分インデックスのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアの部分インデックス (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。
ウィキペディアウィキペディア
Text is available under GNU Free Documentation License (GFDL).
Weblio辞書に掲載されている「ウィキペディア小見出し辞書」の記事は、Wikipediaの索引 (データベース) (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。

©2025 GRAS Group, Inc.RSS