基本的に、2つのビューのタイプ があります。 MySQLで。
-
ビューをマージ
このタイプのビューは基本的に、ビューのSQLを使用してクエリを書き直すだけです。したがって、クエリを自分で作成するための省略形です。これは実際のパフォーマンス上の利点はありませんが、複雑なクエリの記述とメンテナンスを容易にします(ビュー定義が変更された場合、ビューに対して100個のクエリを変更する必要はなく、1つの定義のみを変更する必要があります)。
-
魅力的なビュー
このタイプのビューは、ビューのSQLからのクエリを使用して一時テーブルを作成します。マージビューのすべての利点がありますが、ビューのテーブルのロック時間も短縮されます。したがって、負荷の高いサーバーでは、パフォーマンスが大幅に向上する可能性があります。
「未定義」のビュータイプ(デフォルト)もあります。これにより、MySQLはクエリ時に最適なタイプであると考えるものを選択できます...
ただし、MySQLはマテリアライズドビュー をサポートしていないことに注意してください。 。したがって、複雑なビューによってクエリのパフォーマンスが大幅に向上するOracleとは異なります。ビューのクエリは常にMySQLで実行されます。
効率に関しては、MySQLのビューは効率を上げたり下げたりしません。それらは、クエリを作成および保守するときにあなたの生活を楽にするためにあります。私は数億行のテーブルでビューを使用しましたが、それらは問題なく機能しました...