私は、特定の基準を満たすデータを強調表示するテーブルのビューを作成しようとしています。たとえば、整数値のテーブルがある場合、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. 、動的ビューMySQLでは
- 3. 、動的ビューMySQLでは
- 4. は、効率的にMySQLの
- 5. Celeryはローカルシステムで効率的ですが、Pythonのマルチプロセッシングは効率的ですか?
- 6. mysqlでは、ストアドプロシージャはより効率的ですか?
- 7. 効率的なMySqlクエリ
- 8. 私のMySQLインデックスは効率的ですか?
- 9. MySQLはファイルシステムより効率的ですか?
- 10. ostream_iteratorは効率的ですか?
- 11. String.hashCode()は非効率的ですか?
- 12. getElementById()は効率的ですか?
- 13. DOループは非効率的ですか?
- 14. これは非効率的ですか?
- 15. BigIntegerは効率的ですか?
- 16. Javascript:lengthメソッドは効率的ですか?
- 17. WPFでデータバインディングが効率的ですか?
- 18. MySQLをより効率的に動作させるには?
- 19. Calendar.getInstance()を効率的に呼び出すことが効率的ですか?
- 20. MySQLで多数の行を効率的にINSERTするには?
- 21. 効率的なMySQLの検索
- 22. mysqlより効率的なクエリ
- 23. MySQLの効率的なテーブルの複製
- 24. Djangoビューでモジュールを効率的にインポートする
- 25. mysql_num_rows()php - 効率的ですか?
- 26. より効率的なスクリプトですか?
- 27. mutexの方が効率的ですか?
- 28. より効率的なソリューションですか?
- 29. 効率的なネットワーク検索ですか?
- 30. 効率的なリスト操作ですか?
http://stackoverflow.com/q/7922675/632951を参照してください。 – Pacerier