ここで簡単に紹介します:
この機能は、MySQL 5.7.6 の後に正式に導入されました。 , サーバー側でSQLを受け取った後に書き換えて実行することができます。
•標準の SELECT ステートメントに対してのみ機能し、ビュー定義やストアド プロシージャ内の SELECT ステートメントを書き換えることはできません
• 書き換えルールはメモリに記録され、実際には以下に対応します: query_rewrite ライブラリの下の rewrite_rules テーブル
• query_rewrite テーブルを使用しますストアド プロシージャ: flash_rewrite_rules() と変更ルールをロードするための DML ステートメント
よく考えて次のことを追加する必要があります:
この PPT では、サブクエリを使用して内部結合を最適化し、サブクエリを使用して内部結合を削減する例について説明しました。前のパーツの取り外し。ここには要件があります。つまり、最初のクエリは主キーまたは一意のインデックスである必要があります。画像を見てください:
ちなみに、この作品の実行ロジック: 5.6 以降では、サブクエリは後でマテリアライズド ビューを使用することと同等であり、クエリ ロジックでは IN の前にオプションがあるかどうかが判断されます。は後ろにあります (したがって、以下に重複があるかどうかは気にせず、重複があるかどうかを尋ねるだけです)。そのため、前のものが主キーまたは一意のインデックスである場合、重複排除の効果があり、Group by 操作が削減されます。 。 ちょっとしたヒント。
上記は MySQL Query Rewrite Plugin で使用されるコンテンツです。その他の関連コンテンツについては、PHP 中国語 Web サイト (www.php.cn) に注目してください。