クエリの自動簡素化

実行エンジンでは、クエリを実際に実行する前にクエリの簡素化が試みられます。その目的は、利点が必ず得られる最適化手法を適用することによって、クエリを最適化することにあります。その手法として、冗長な操作の削除や可能な範囲での外部結合から内部結合への変換などがあります。これらの最適化は必ず適用されることから、静的最適化と呼ばれます。

ここでは、きわめて重要な静的最適化について説明します。

クエリの自動簡素化は、デフォルトで有効になっていますが、[Administration] メニュー > [Server configuration] の [Queries optimization] ダイアログで無効化できます (「 クエリの最適化 」を参照)。

特定のデータベースでこの最適化を有効または無効にするには、[Administration] メニューで [Database management] をクリックし、目的のデータベースを選択して [Edit] をクリックします。つづいて、[Automatic simplification of queries] で [on] または [off] をクリックして [Ok] をクリックします。このダイアログの [Automatic simplification of queries] で [Default] が選択されている場合、データベースの構成は [Queries optimization] ダイアログで定義されています。

実行エンジンで実行される簡素化のいくつかを以下に挙げます。