Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 12.0.1 » SQL Anywhere サーバー SQL の使用法 » データの問い合わせと修正 » クエリ » 高度:クエリ処理のフェーズ

 

クエリ処理のフェーズをスキップするための条件

ほぼすべての文が、すべてのクエリ処理のフェーズを経由します。ただし、例外が主に 2 つあります。「プランのキャッシュ」の恩恵を受けるクエリ (データベースサーバーによってプランがキャッシュ済みのクエリ) と「バイパスクエリ」です。

  • プランのキャッシュ   ストアドプロシージャーまたはユーザー定義関数内のクエリの場合、データベースサーバーは再利用できるように実行プランをキャッシュします。このクラスのクエリの場合、クエリ実行プランは実行後にキャッシュされます。次回クエリが実行されると、プランが取得され、実行フェーズまでのすべてのフェーズがスキップされます。

  • バイパスクエリ   バイパスクエリは、データベースサーバーがオプティマイザーをバイパスできると認識する特定の特性を持った、単純なクエリのサブクラスです。最適化をバイパスすることで、実行プランの構築時間を削減できます。

    クエリがバイパスクエリとして認識されると、コストベースの最適化ではなくヒューリスティックが使用されます。つまり、セマンティック変形と最適化のフェーズはスキップされ、クエリの実行プランはクエリの解析ツリー表現から直接構築されます。

 単純なクエリ
 最適化の実行と最適化の非実行の強制
 参照