私は、特定の基準を満たすデータを強調表示するテーブルのビューを作成しようとしています。たとえば、整数値のテーブルがある場合、100より大きい値を持つ行を表示するようにしたいと思います。テーブルのビューを作成することでこれを実現する方法はわかりますが、ビューは動的ですか?私はこれをMySQLでテストしたところ、それは正しいと思われます。しかし、私のテーブルに1000行以上がある場合、これは効率的ですか?ビューは元のテーブルの変更に対して「動的に」更新されますか?MySqlビューは動的で効率的ですか?
19
A
答えて
23
基本的に、MySQLには2 types of viewsが基本的にあります。
ビューのこのタイプは、基本的にはビューのSQLを使用してクエリを再書き込みビュー
をマージします。それで、あなた自身で質問を書くのは簡単です。実際のパフォーマンス上のメリットはありませんが、複雑なクエリを簡単に作成し、メンテナンスを容易にすることができます(ビュー定義が変更された場合、ビューに対して100のクエリを変更する必要はなく、
TEMPTABLEビュー
ビューのこのタイプは、ビューのSQLからのクエリで一時テーブルを作成します。マージビューのすべての利点がありますが、ビューのテーブルのロック時間も短縮されます。したがって、負荷の高いサーバーでは、パフォーマンスが大幅に向上する可能性があります。
は
しかし、注意することが重要なことを注意してください、ということです...またのは、MySQL、クエリ時に最良のタイプがあると考えて何を選んでみましょう「未定義」ビュータイプ(デフォルト)、ありますMySQLはmaterialized viewsをサポートしていません。したがって、Oracleと似ているわけではありません。複雑なビューでは、問合せのパフォーマンスが大幅に向上します。ビューのクエリは、常にMySQLで実行されます。
効率性に関して、MySQLのビューは効率を増減しません。彼らはあなたの人生をより簡単にして、質問を書いたり維持したりします。私は何億もの行を持つテーブルのビューを使用しており、正常に動作しています...
9
mysqlは一時テーブルでインデックスを使用しないため、パフォーマンスに悪影響を及ぼします。
関連する問題
- 1. mySQLクエリは効率的ですか?
- 2. Celeryはローカルシステムで効率的ですが、Pythonのマルチプロセッシングは効率的ですか?
- 3. mysqlでは、ストアドプロシージャはより効率的ですか?
- 4. Javascript:lengthメソッドは効率的ですか?
- 5. getElementById()は効率的ですか?
- 6. String.hashCode()は非効率的ですか?
- 7. これは非効率的ですか?
- 8. DOループは非効率的ですか?
- 9. WPFでデータバインディングが効率的ですか?
- 10. MySQLで多数の行を効率的にINSERTするには?
- 11. MySQLの効率的なテーブルの複製
- 12. 効率的なネットワーク検索ですか?
- 13. mysql_num_rows()php - 効率的ですか?
- 14. を効率的
- 15. 効率的
- 16. を効率的
- 17. 効率的ルビー
- 18. Djangoビューでモジュールを効率的にインポートする
- 19. C++:libmysqldでMySqlデータを効率的に読み込むには?
- 20. mysqlクエリで逆ワイルドカードを行う効率的な方法は?
- 21. 動的アンケートを効率的に保存する方法は?
- 22. MySQLは、より効率的な長いテキスト、テキスト、またはblobですか?挿入効率を改善する
- 23. Oracle対MySqlデータベース。より高速で効率的なのはどれですか?
- 24. 動的フォーム作成のための効率的なMySQLデータベース構造
- 25. Django:ビューやテンプレートで計算する方が効率的ですか?
- 26. 私のプログラムでココア効率的なビュー描画
- 27. オブジェクトのビュー数を効率的に保存するには?
- 28. これはMySQL上のリレーショナルテーブルを効率的にクエリする方法ですか?
- 29. は、効率的にハイパーリンク
- 30. 効率的な方法は
http://stackoverflow.com/q/7922675/632951を参照してください。 – Pacerier