2.24
SQL最適化指定
機能
SQL文の検索効率を向上させるための最適化を,SQL文に指定できます。
SQL最適化指定は,次の項目に対して指定できます。
使用インデクス
結合方式
副問合せ実行方式
共通規則
SQL最適化指定を指定しても,指定が有効にならない場合があります。SQL最適化指定が有効かどうかについては,アクセスパス表示ユティリティで確認できます。アクセスパス表示ユティリティについては,マニュアル「HiRDB Version 8 コマンドリファレンス」を参照してください。
SQL最適化指定の前後を,「/*>>」と「<<*/」で囲むことができます。囲む場合は,SQL最適化指定ごとに囲んでください。「/*>>」と「<<*/」で囲んだ場合,注釈にはなりません。「/*>>」と「<<*/」で囲んで指定すると,他DBMSとの共通APなどでの互換性確保に有効となります。
SQL最適化指定は,SQL最適化オプション及びSQL拡張最適化オプションよりも優先されます。SQL最適化オプション及びSQL拡張最適化オプションについては,「
3. ALTER PROCEDURE(手続きのSQLオブジェクトの再作成)
」,「
3. ALTER ROUTINE(関数,手続き,及びトリガのSQLオブジェクトの再作成)
」,「
3. ALTER TRIGGER(トリガのSQLオブジェクトの再作成)
」,「
3. CREATE 〔PUBLIC 〕PROCEDURE(手続き定義,パブリック手続き定義)
」,又は「
3. CREATE TRIGGER(トリガ定義)
」を参照してください。
留意事項
結合方式のSQL最適化指定でBY NESTを指定した場合,その結合の内表に対しての使用インデクスのSQL最適化指定に,ネストループジョインに使用できないインデクス又はインデクス利用の抑止を指定したときは,使用インデクスのSQL最適化指定が無効となります。
「/*>>」と「<<*/」で囲んだSQL最適化指定を,更に「/*>>」と「<<*/」で囲むことはできません。
<この節の構成>
2.24.1 使用インデクスのSQL最適化指定
2.24.2 結合方式のSQL最適化指定
2.24.3 副問合せ実行方式のSQL最適化指定
2.24.4 SQL最適化指定の例