Hitachi

ノンストップデータベース HiRDB Version 10 システム導入・設計ガイド(UNIX(R)用)


17.1.1 作業表用ファイルの作成契機

作業表用ファイルとは,次に示す操作をするときに発生する一時的な情報を格納するファイルです。

注※

作業表用ファイルは,SELECT文で複数の表を結合して検索する場合やCREATE INDEX実行時など,特定のSQL実行時に使用されます。作業表用ファイルを必要とするSQLを次に示します。

ただし,次に該当しないSQLでも,アクセスパスによっては作業表用ファイルを必要とする場合があります。作業表用ファイルの要否については,アクセスパスのWork Tableの項目を確認してください。また,SQLにLIMIT句を指定しアクセスパス中にMEM(SUBSORT)の表示がある場合も,作業表用ファイルを必要とすることがあります。アクセスパスの出力形式の詳細については,マニュアル「HiRDB コマンドリファレンス」の「アクセスパス表示ユティリティ(pdvwopt)」の「出力形式」を参照してください。

  1. UNION [ALL]句又はEXCEPT [ALL]句を指定して検索する場合

  2. DROP SCHEMA

  3. DROP TABLE

  4. DROP INDEX

  5. REVOKEでアクセス権限を取り消す場合

  6. CREATE INDEX

  7. ASSIGN LIST文で実表からリストを作成する場合

  8. SELECT文で次に示す指定をする場合

    • 複数の表を結合して検索するとき

    • インデクスを定義していない列に対してORDER BY句を指定するとき

    • 横分割表に対してORDER BY句を指定するとき

    • 選択式中に集合関数を含む値式を指定しているとき(HiRDB/パラレルサーバの場合にだけ該当します)

    • 選択式中にウィンドウ関数COUNT(*) OVER()を含む値式を指定しているとき

    • GROUP BY句を指定するとき

    • DISTINCT句を指定するとき

    • インデクスを定義した複数の列に検索条件を指定するとき

    • 繰返し列インデクスを定義した列に検索条件を指定するとき

    • SQL最適化オプションに「プラグイン提供関数からの一括取得機能」を指定し,探索条件にプラグインインデクスを使用するプラグイン提供関数を指定して検索するとき

    • FOR UPDATE句を指定するか又はこのカーソルを使用した更新があり,インデクスを定義した列に検索条件を指定するとき

    • FOR READ ONLY句を指定するとき

    • 限定述語の副問合せを指定するとき

    • IN述語の副問合せを指定するとき

    • ビュー表の検索,又はWITH句を指定した検索で内部導出表を作成するとき

  9. INSERT文の挿入元の問合せ本体に,次に示す指定をする場合

    • 外への参照がある副問合せに更新表を指定するとき

    • 挿入元の問合せ式本体の主問合せに更新表を指定するとき

  10. UPDATE文に次に示す指定をする場合

    • 探索条件中又は更新値中に,外への参照がある副問合せを指定し,その副問合せ中に更新表を指定するとき

    • 探索条件中に限定述語の副問合せを指定するとき

    • 探索条件中にIN述語の副問合せを指定するとき

    • インデクスを定義した列を更新対象及び探索条件に指定し,かつそのインデクスを使用するとき

  11. DELETE文に次に示す指定をする場合

    • 探索条件中の外への参照がある副問合せに,更新表を指定するとき

    • 探索条件中に限定述語の副問合せを指定するとき

    • 探索条件中にIN述語の副問合せを指定するとき

    • インデクスを定義した列を探索条件に指定し,かつそのインデクスを使用するとき

  12. ALTER TABLE ADD PRIMARY KEY

  13. ALTER TABLE DROP PRIMARY KEY