Oracle Master

索引を作成する条件

投稿日:2009年8月9日 更新日:

表に索引を作成すると、特定の列の検索処理の速度が向上する。しかし、データの挿入(INSERT)、更新(UPDATE)、削除(DELETE)では、索引のメンテナンスがバックグラウンドで発生するため、負荷が高くなってしまう。よって、索引を作成する場合は以下の条件にあう場合にのみ作成する。

  • 表から2%から4%のデータを検索する場合
  • 広範囲の値(多くの種類の値)を含む列
  • NULL値を多く含む列
  • WHERE句や結合条件で使用する列

 

頻繁に更新が発生する表では索引の作成はお勧めしない。

広告

広告

-Oracle Master


comment

関連記事

no image

順序(SEQUENCE)に関する注意点

順序は以下のように作成する。 CREATE SEQUENCE seq_no START WITH 100 MAXVALUE 200 CYCLE; 直近に採番された順序を取得するには、順序名.CURRV …

no image

受験体験記 – Oracle Master Bronze 11g

Oracle Master Bronze 11gの試験に合格しました。 Bronze SQL基礎I 1Z0-017J : 90%で合格 SQL基礎?はSQLの文法を問う問題が多いので、SQLを業務で使 …

no image

集合演算子の評価順序

集合演算子には、UNION、UNION ALL、MINUS、INTERSECTがあるが、優先順位はない。基本的には集合演算子は左から右に評価される。ただし、SQL文を見易くし、また将来的なSQLの仕様 …

no image

SQL*Plusの画面の調整 – 文字が途中で折り返してしまう

SQL*Plusで列の長い表をSELECTしたら、画面の右端で表が折り返してしまいます。SQL*Plus画面の幅を広くしてみましたが、それにも関らず、画面の途中で表が折り返してしまいます。その場合は、 …

no image

リテラル文字とは?

Oracleでのリテラル文字とは、SELECT句に含まれる、 ・文字 ・数字 ・日付 のことを言う。文字と日付のリテラル文字はシングルクォーテーション(例:’文字’)で囲む必要 …

広告

転職